Back to Top

SturmBot.org

Dedicated to Johan Linde
Download details

Marine Bot 0.97.1b Day of Defeat edition update package (Alpha t Marine Bot 0.97.1b Day of Defeat edition update package (Alpha test)

Marine Bot 0.97.1b Day of Defeat edition update package

An update Frank has worked on recently... full list of what changed is here. I have that changelog below too.

Updated 28 Nov 2025

TLDR- the most significant items for most may be this last item right at the bottom of this page so read that at least... Added 'class_selection_limit_allies' and 'class_selection_limit_axis'


This being an Alpha test 'update' it only has a few files to add to the current version.

This is a Mirror from the official files I have added a readme.

From the readme

Marine Bot 0.97.1b Day of Defeat edition update package
By Frank McNeil

This is a "Alpha update" to the stable version... Marine Bot 0.97b Day of Defeat edition

IT IS A PATCH... SO INSTALL THIS FIRST...
https://sturmbot.org/index.php/downloads/download/27-marine-bot-installation-files/109-marine-bot-0-97b-day-of-defeat-edition

Install

The "dod" folder has the correct file placement.
Just place the "dod" folder in the download into your "Half-Life" folder.

To find your dod folder…
1. Open your Steam Library
2. Right-click on the “Day of Defeat” icon
3. Select “Manage” > “Browse local files” ….
4. A folder called “Half-Life” will pop-up, the dod folder is in there.
5. Copy and paste the “dod” folder in the download into the “Half-Life” folder.
6. If you are prompted to overwrite files, do so and this will update the package

INsane
Webmaster Sturmbot.org

The update details...

Marine Bot 0.97.1b[DOD] change log 28 Nov 2025


Added two client commands 'wpt timeincrease' and 'wpt timedecrease' allowing you to fine tune the waypoint wait time (they have aliases 'timeinc' and 'timedec' and the argument they accept is the team ID for which you want to do the tuning, no argument given means the time tuning will be done for both teams, the steps at which is the time changed are either by 5 or 10 seconds that depends on current time value where a time below 60 seconds will be changed by 5 and a time equal or over 60 seconds will be changed by 10)

FIXED bot being able to enter the same path again when it starts and ends on the same junction (rare occurrence because usually there aren't many paths that start and end around the same cross waypoint, still it's a bug that got to source code in version 0.96b as a result of code optimization to make MB be less demanding on CPU usage by not calling path navigation function upon reaching a cross waypoint, this however led to clearing crucial variable and allowed bot to pick the same path again in such case)

FIXED autowaypointing not signing the waypoints at times (autowaypointing should always set the "built-in auto waypointing" string to the author's signature and erase the 'modified by' signature but this didn't work if you started on fresh map with no previous waypoints, now the system will correctly remember that you've activated autowaypointing so the signatures will be set right, this memory lasts till the moment you change or restart the map)

FIXED navigation in cramped space (if there was a sequence of two waypoints with a range below 20 units and the second one was either a crouch or a prone one then the bot didn't slow down and sometimes missed that waypoint and/or got stuck on nearby obstacle due to that, now the bot will slow down properly to achieve required precision in navigation)
Improved unstuck behaviour (when bot gets stuck and has to reset navigation he searches for any nearby waypoint besides those on the list of 5 lastly visited waypoints but if there are multiple such waypoints that are actually also unreachable - close and on same level and fully visible but behind impassable object like a line of pillars for example - the bot may enter a loop where he keep switching between those other waypoints in a try to reach them and can stay stuck forever, now these other waypoints are correctly processed through the previously visited ones so the bot shouldn't get into the loop anymore, this should also free some of the truly lastly visited waypoints and allow the bot to return back the same way that he got to his current location)

Added optimization to waypoints and paths save functions (both now first sort the list of used waypoints/paths so that all deleted waypoints/path are at the end and then trim the list to last valid - i.e. not deleted - record, this means there won't be saved and next time loaded and processed any deleted waypoints/paths that may have been at the end of the list, e.g. you've created total of 120 paths but then you've erased 5 of them for some reason so when you save the waypoints there will be stored only 115 existing paths; this again helps to keep low system resources to run MB)
Changed client commands 'wpt printall' and 'pathwpt printall' (both now accept argument 'reset' that gets you back to the start of the list without having to go through rest of the pages)

Added client command 'wpt changenumber' that allows you to set a new index for any waypoint on the map (the alias is 'changeindex' and the two arguments this command takes are the new index and the index of current waypoint where the second argument can be omitted if you are standing close to any waypoint, this command basically swaps the indexes of any two waypoints including the deleted ones which allows you to sort the list of all waypoints at your will - e.g. move all cross waypoints to the beginning of the list)

Added client command 'pathwpt changenumber' that allows you to set a new index for any path on the map (the alias is 'changeindex' and the two arguments this command takes are the new index and the index of a path for the change where the second argument can be omitted if you are standing close to any waypoint where is at least one path, this command swaps the indexes of any two paths including the deleted ones which allows you to sort the list of all paths at your will but typically to fill the blanks in the list)

FIXED bug in assigning the move speed when having to drop from the ledge or low wall or to lower level in general (when the bot reached the edge he slowed down so much that the unstuck code incorrectly treated that as being stuck and usually made the bot jump which often led to getting hurt)

FIXED 'pathwpt printall' command printing just the newly added paths in certain cases (if you used this command prior adding at least two new paths and then after the addition again then only the newly added paths were printed instead of the full list, also added intro message for the list so that this console output is clearly separated which improves readability)
Changed console output for 'pathwpt checkproblems' command (mostly formating not to look that weird, but the bug report about a roadblock waypoint not being in a pair on a path got modified so that it's reduced only to a warning in cases when this waypoint is the last one on a one-way path to reflect the updates to navigation code done for 0.97b release, like all warnings this helps waypoints creator see whether such setup was really meant to be there)

FIXED zero priority setting not disabling the wait time on the waypoint (due to fatal bug in original implementation some time in spring or summer 2024 and a need to revert the source code to state prior this feature, this got completely lost from the code, now this major mistake was finally noticed and the feature was reimplemented so you can use the trigger tag on a typical camper/sniper waypoint setup to make the bots wait or not wait at such waypoint based on game events that you link to this waypoint)

FIXED occasional inability to detect open door (in not so common cases when the sliding door entity wasn't correctly aligned to particular axis in the 3D space - the door moved on both X as well as Y axis so for example not directly to left but also slightly to back - then the bot kept standing there until the set time limit to reach his next waypoint ran out which made the bot reset the navigation and start moving again, next there was problem with swing door that didn't open that much - e.g. large gate - bot wasn't able to detect open status and waited there till he ran out of the time to reach next waypoint which again resulted in navigation reset, now the bot will check for free space in front of him after 5 seconds of waiting in order to pass through the door in case they are open enough to allow it)
Bot can now detect cases when his name gets changed by game engine and rename himself to have a unique name (Half-Life engine differs clients that would have same name by adding a number in round brackets in front of the name, typically happens on public servers; MB is able to detect this and pick different name from the list of names in marine_dog-tags.txt to rename himself soon after he is given this numbered name)

FIXED bot being able to pick empty name or name with random characters if marine_dog-tags.txt file doesn't exist or has no names (in such case the function responsible for picking the name was wrongly able to access the memory address of the array that normally holds the bot names and return random nonsense that was stored there at that very moment)

Added 'class_selection_limit_allies' and 'class_selection_limit_axis' as a configuration variables (this allows you to limit bots in using only selected group of classes in DoD1.3 by defining a list of their numbers separated by spaces - e.g. "1 5 2 3" will allow allied bots to choose only between rifleman, sniper, staff sergeant and master sergeant classes, these selection limits are used whenever you don't specify the class argument for either the recruit or addmarine command, and will also be used by the system when it does autobalance teams, or adds bot to replace a leaving player on server, or if you use the fillserver command in game on your own computer)

Information
Created 2025-12-05 08:06:27
Changed 2025-12-25 07:49:55
Version
Size 715KB
Rating
(1 vote)
Created by INsane
Changed by INsane
Downloads 66
License
Price