Updates to both the Beta and Demo
Both the beta and demo versions have quite a few changes and fixes, including:
- Added code to recycle GUIFitItemResult in GUIInventory update loop, to reduce memory leaks.
- Added delete cursor mode back, mapped to 4 key.
- Added random encounter to help players that are unfairly hypothermic from bad luck in the first 24 hours.
- Added mousehweel support for selecting attack modes.
- Added code to improve spying feedback when AI approaching loot.
- Added code to make AI seem more interesting when spying.
- Added code to prevent messaging player when distant AI has items degrade.
- Added message to let player know when scavenge sneak check fails.
- Added code to message player when creature is taking or dropping items on ground.
- Added code to make spears impale and cause penalties until removed.
- Added .308 rifle recipes to allow adding a scope to a strapped rifle, and vice versa.
- Added stack info to items in container preview popup.
- Added code to default cursor to take mode while in encounters/battle, and switch back when done.
- Added code to prevent same item from being used as multiple consumed ingredients when crafting (e.g. pill bottle counting both as container and small parts in noise trap).
- Changed scavenging encounters so they don't spawn creatures, but rather attract nearby creatures, if any.
- Changed the way images are loaded and stored, improving memory usage.
- Changed the way item sprites are handled, to reduce memory leaks.
- Changed creature zones so starting area spawns bandits instead of raiders, and 1 instead of 1-2.
- Changed item pop-up to accommodate more longer newspaper articles.
- Changed long newspaper article to fit better in limited space.
- Changed Lure to be available less often.
- Changed sleeping bags to work on ground as well as camp.
- Changed wording in .308 rifle recipe for consistency.
- Changed wording in "Long shaft" to be "Large shaft" for consistency.
- Changed fur-wearing condition to use term "hide" instead, for consistency.
- Changed container size properties so metal sauce pan can do 2x and 3x water, and bottles/cans cannot.
- Changed loot tables to produce fewer nanorobot kits and more saucepans.
- Changed mushrooms to degrade over time.
- Changed HVAC recipe to accept non-waterproof sheets as ingredients.
- Changed electric charge to not be usable as heat source.
- Changed lockpicking scavenge option to only allow lockpicks if skilled, so player doesn't have to use skill explicitly.
- Changed recipes requiring monocular and binocular optical zoom to only accept small or medium ingredients (to avoid using scoped rifle and other large items as inputs).
- Fixed a bug that caused scavenging to require selecting both lockpicking skill and lockpicks when it shouldn't.
- Fixed a bug that incorrectly nullified old object references.
- Fixed a bug that caused crafting to break if multi-page yield included a broken object.
- Fixed a bug that prevented player from being able to offer surrender.
- Fixed a bug that misreported charges remaining in attack mode UI.
- Fixed a bug that caused quick recipes to sometimes leave crafting button active after crafting complete.
- Fixed a bug that caused quick recipes to sometimes craft wrong or missing output.
- Fixed a bug that would leave crafting page buttons active after crafting.
- Fixed a bug that sometimes prevented creatures from from spawning.
- Fixed a bug that allowed non-raw meat to be cooked or cured.
- Fixed a bug that caused item pop-up info to report wrong charge count when charges were stacked.
- Fixed a bug in wound slots that made right and left arm appearances mirrored.
- Fixed a bug that caused pain indicators to be on wrong side when in 1360 mode.
- Fixed a bug that caused lights and nightvision to be unavailable in scavenge encounters.
- Fixed a crafting bug that caused a null pointer exception when a consumed ingredient was also a tool.
- Fixed a bug that caused stacked items to have wrong components when shown in crafting screen.
Memory optimizations should make the game more stable in games where much of the map has been explored.
Memory Optimization and Stability Fixes
One of the biggest changes in this build is the way memory is managed, particularly for items. Items should now use much less memory than before when not currently visible on the inventory screens. In practice, this should mean that the game is less likely to crash due to memory leaking as one explores more of the map.
In addition, several bugs in the crafting system have been fixed, which should reduce the number of cases where the game starts acting funny (clicking not registering, crafting failing, etc.).
Another major change to the game is the way creatures are spawned. When scavenging, creatures will no longer spawn in the same hex when the player's sneak check fails. Instead, the player is alerted that they might've attracted some attention. Any creatures close enough to hear/see the player's activity will head towards the hex to see what's up.
Additionally, the creatures most often seen in the early game are now bandits instead of the tougher raiders. They'll come in smaller groups, too.
And for early games where bad random loot drops combine with freezing weather, there will be some relief against unfair hypothermia.
New UI Tools
The delete cursor is back! Now, if the player holds the 4 hotkey, they can rapidly delete items much like they would use them. Also, the mousehweel now changes attack modes.
Updates to the Beta
In addition to the changes above, the beta has the following updates:
- Added code to scatter missed missiles in adjacent hexes.
- Added code to transfer missile into wound slots if weapon does enough cutting damage.
- Added code to drop missiles impaled in wounds to the ground for retrieval when creature looted/dead.
- Added code to allow impaled weapons to cause damage when removed or over time from being bumped.
- Added code to degrade charges when attack mode used.
- Changed flashlight to always have either 0 or 4 batteries inside.
- Changed slung pebble to have lower damage, so it's differentiated from stone a bit more.
- Changed shopping cart parts to degrade with cart, instead of remaining at 100%.
- Changed bows not to count as shafts in recipes (e.g. making spears, greenwood bow).
- Fixed a bug that allowed junk market exploit if game saved at midnight.
- Fixed a bug that caused missing flashlight image when wielding flashlight.
- Fixed 1360x768 sling attack mode image.
- Fixed box to not be wearable as a backpack.
- Fixed a bug that caused shopping and box carts to be too big for crafting screen use.
- Removed container property from jar of eyes.
- Removed ability to retrieve primitive missiles immediately after firing.
Most of these changes are small tweaks and fixes. However, one bigger change involves primitive missiles. Now, primitive missiles can no longer be retrieved immediately after firing. Instead, those that miss will end up in an adjacent hex. If the missile hits, and it does enough cutting damage, it'll impale into the wound. Impaled missiles can be removed by the target, causing further wounding, or they will appear on the ground when the target dies. Blunt missiles, like stones, will simply disappear if they hit.
Overall, the above changes should make both the beta and demo smoother, more fair experiences. As always, if there are any troubles with the new builds, let me know!