Din's Legacy patch 1.012
Author: indiefoldcreator
Date:
Thu, 30 Mar 2023
Game: Din's Legacy
This huge patch fixes several potential crashes, fixes some slowdowns, improves NAT punchthrough, adds clan icons next to clan name in most places, and fixes a ton of other minor issues.
1.012 change list:
1.012 change list:
- fixed a potential crash in Area::getGateName
- fixed a bug that can lead to infinite loop in GameShared::generateWorldSaveName
- fixed a potential crash in Level::getNumMonstersToSpawnPerBlock
- fixed a possible crash in MonsterType::getRandomUniqueVersion
- fixed a potential crash in Vendor::generateItem
- fixed a crash in getCurrentIdentifier (not bounds checking)
- fixed a crash when player stats are recalculated when item penalties change (DysDaemoN/Dromi)
- now when run out of fake entities for effects, put particle back on free list instead of deleting
- fixed emitters from fake entities never being removed (very likely a slowdown over a long play session) (happens because fake entities are never deleted but added to a reuse list) (Jean)
- fixed a crash in PlayerClient::notEnoughPowerWarning that could happen if you pressed a mouse button at the right time while loading
- changed server registration time from 120.0 to 20.0 seconds so NAT routes don't time out
- server now tries port guessing so NAT punchthrough is a bit more robust
- now take into account NATs that decrement port numbers by 1 or another small number
- now always send local address for assisted join
- fixed respawn time when level not loaded
- fixed MaxCount on sounds not working correctly
- fixed sometimes relation dropping to 0.0 when a treaty is cancelled
- fixed high frame rate + trying to use item/skill every frame overflowing the networking
- no longer broadcast sound events for non-players
- broadcast sound is now limited to once each frame
- now can put clan icons in text
- clan list on map screen now show clan icons
- added clan icon to clan relation list when highlighting a clan icon/portrait
- now show clan icons almost everywhere clan name is displayed
- put icons next to final line end on power comparison screen so much easier to tell which line is which
- sped up a bunch of get npc type functions
- fixed _longshot not initialized correctly
- fixed some data not getting reset on client when abandoning a sector (Darke)
- now player quests will update their seed and other info if the main quest seed has changed for some reason (Annex/Boink)
- fixed a bug in Time::operator=( seconds ) (this bug's probably only been there for ~17 years) (not sure how many bugs this caused, but it was doubling the long war value)
- fixed getting gate unlocks in multiplayer when going to a new sector (phoagne)
- now if a treaty in a trade fails to go through, entire trade is cancelled (Excellion/Sent Ernit)
- clans will now reject all demands if at war with trader
- fixed after deleting a ship the list not correctly selecting the next ship in the list (Jean)
- now if near a monster when it is destroyed, player has higher chance of getting the credit for the kill (Destro)
- fixed BestQuestBonus values not working correctly (being read in as bool)
- fixed moving a component to a cargo bay and most of the time it getting moved to a different cargo bay (firecat666)
- viewing current treaties will now show cease fire and time remaining (firecat666)
- now make sure to cancel any trade agreements if go back from ceasefire to war (firecat666)
- fixed a few places that clans could get above the max amount of credits (firecat666)
- bounty hunter quest now fails if the bounty hunter kills the player
- now shouldn't be able to get stealth and stealth surprise bonus at the same time
- fixed a couple problems with clans getting credit for destroyed clans (Boink)
- fixed failing quests in multiplayer when a player has a can't die with quest but another player dies (Dreepa)
- added a max xp debt so not quite so high at high levels (lechuck1)
- now clans won't declare wars on clans they've recently discovered (phoenix_54d)
- made sabotage options much more reliable do something
- fixed sabotage quests not applying to the correct clan sometimes (LotusBlade)
- fixed passive skills on items not being able to update stat multipliers
- fixed ai not trying to get another enemy once first one was killed sometimes
- fixed swapping 2 same type items numbers increasing each time (Alstein/floofyfunster)
- fixed weapon speed on weapons getting counted multiple times in DPS (Annex/Darkness)
- now defaults to highest resolution up to monitors current resolution (so probably the current resolution)
- now it is harder to get a clan to declare war on someone they have a treaty with (Sharp)
- added a Text Size option in advanced graphics options (Tchey/Agitated Ice)
- now take into account a clan's spy resistance when showing rumor, propaganda, sabotage, espionage, and plant spy chances (Kurama Kitsune)
- should no longer be able to target invisible enemies (at least directly) (fabulousfreep)
- now stop the fighting correctly if go straight from war to a non-peace treaty
- now long war relation change gets applied a second time at 2X max war time
- now long war relation change gets applied a third time at 4X max war time
- now delete map file when user tells game to delete wld file (sector) (firecat666)
- now targeting prioritizes monsters some
- fixed fighters still attacking things unprovoked when using defensive stance (Fulano5321)
- now mention Magic Find Chance bonus on each achievement achieved
- fixed a interactWithEntity fall back position using hardcoded slot index instead of correct left or right slot
- fixed weapon stop firing when client/server get weapon timing out of sync
- small optimization to updateMapPixel (now only divide if above 1 instead of 0)
- fixed weird minimap issue (out of level color on edge of fading out)
- no longer show relation line between 2 covenants that haven't met yet
- now clan icons on relation screen shrinks if too many on screen at once (starts at 7)
- now show a ? for relation numbers when the clan hasn't actually met the other clan
- now makes sure war is going to go through before announcing honors treaty by declaring war (Excellion)
- fixed a case sensitive code issue on Linux build
- names are now drawn on top of blips on map so you can see the names better (Darke)
- clans now save their definition by name instead of index (save games more stable when I add new clans)
- fixed clan trait saving (now by name instead of index) (Exgene)
- fixed a slowdown when adding waypoints on map (it was saving cfg each time for temporary change) (Darkness)
- no longer save cfg file immediately after zooming in/out to prevent slowdown (Darkness)
- sped up Emitter::draw a little if no particles to draw
- made teleport detection on client a little better
- now smooth entity movement better - gets rid of a lot of hitches (Bluddy/ScrObot/Mark)
- fixed some problems with mouse button 5 (Tchey/roykela)
- now quest update messages go through the normal center print system so don't overlap other messages
- now most loop sounds fade out instead of abruptly ending (this is mostly engines and projectiles)
- fixed World::getRoomName returning bad value if level index out of range
- now automatically pause if you have used a controller and it is unplugged
- now can recognize a controller plugged in while game is running
- now if a widget blocks entire screen and blocks mouse, it automatically sets DoesntLetInputThrough
- highlight text no longer overlaps highlight icon (ScrObot/Takarias)
- now draw - and + characters an extra time and slightly larger to make them a bit more clear
- now ambient music fades out when the game is paused (Bluddy)
- Offer Trade and Demand now do nothing if empty offer (Eris Shrugged)
- now can lock color in text
- fixed non-right mouse button clicks on map from leaving waypoints (Dreepa)
- can now highlight clan name on system/sector maps to get clan info
- can now click on clan names in system/sector maps to talk to that clan
- now make sure player has met at least one of the clans in question when message is sent about a rejected peace treaty offer
- now when dropping a stackable item on a vendor slot it tells you how many are going to get transferred (1 normally, entire stack of ctrl down)
- fixed most powerful clan changing every other calculation because of come from behind bonuses
- fixed a filename issue in TextureCtx::load
- now when highlighting a contact that you have met show clan info
- now money highlight on buy/sell screen will use commas if necessary
- widgets can now draw a shadow
- quest available and completed icons in relations screen now have a shadow (Destro)
- added some alpha to background when highlighting clan icons in relation screens so a bit easier to see what is going on
- now will automatically split items if spawned in greater amounts than the max stack (PhoAgne)
- now eliminated by text can handle random clan names and specific monster names
- now map will scroll if you move mouse cursor to edge of screen
- teleport just clears the target instead of destroying incoming proectiles (The DevoMiezer)
- no longer send clan messages to stop attacking a friend when they haven't even met them yet
- now mention that can hold ctrl to sell an entire stack (Tyrax Lightning)
- can no longer add 0 gold to a trade (firecat666)
- updated donators
- moved entering system print down a little to not overlap lose timer info (firecat666)
- made player status bars 50% larger so a bit easier to see among other status bars
- fixed getting multiple object is farther than it appears messages sometimes
- now if you hold down the ctrl key when selling a stack of components with the space bar it will sell the entire stack (kerzainuhamster9)
- key names can now be translated
- mouse button 3-5 are now MB3, MB4, MB5 (so they fit better)
- added translations for leftcontrol, rightcontrol, leftalt, rightalt, pagedown, and pageup
- can no longer remove original text from a quest generated waypoint (Tnega)
- now if ctrl buy on an consumable in essential components section, only buy 1 instead of buying until you're out of credits (derpenstein)
- added clan icons to power ranking bars
- fixed not getting some pickup sounds (sounds now come from player instead of item)
- now get modifier icon when highlighting on system/sector map
- moved MapLevelMaxZoom to database instead of hardcoded
- now check that quest title has some text before overriding biggest accomplishment text
- now if successfully demand something print says demanding instead of trading (firecat666)
- added SoundCullingDistance (1500.0) and change skill and combat sounds to use this instead of 400.0/500.0
- now highlight text box will be at least the size of the icon (if there is an icon) (ScrObot)
- no longer show damage numbers in fake game
- no longer show health bars in fake game
- now health bars of planets/ships from clans you have a mutual protection pact or alliance with are dark green
- no longer get multiple buzzes for a warning that is already displaying on the screen
- now filter random names a little
- now when highlight component/object text, it also highlights the entity and shows the highlight text for that component/object
- made it so static models with alpha model data gets cached correctly (will speed somethings up some)
- now give warning can't add socket to a component more reliably (Annex)
- can no longer click on list items that aren't displayed (Eris Shrugged)
- center print now uses value from database correctly instead of old hardcoded value
- now smooth object angles a little better (Bluddy)
- added sound when component gets a rarity bump when identifying it (Redsovietz)
- fixed joystick button names not being translated correctly on widgets
- dpad on controller now moves mouse to next clickable widget in the specified direction
- now dpad works on lists
- now left controller stick can scroll scrollbars/lists
- now left controller stick can scroll sliders
- now dpad works on drop down boxes
- added menu priority to have better control of always on top stuff
- now "Can't increase durability more" warning is a little more clear (Darke)
- dynamic music no longer plays on opening screen since it already has music (DysDaemoN)
- can now solve quests from clan diplomacy for accept in person quests (Annex/Verdusk)
- now if switch out a component of the same type it will automatically update user slot to new component (Fulano)
- now if remap up/down it will work consistently on quest screens (firecat666)
- now when a menu that pauses is up and you hit the pause button it doesn't unpause client side of things for a frame (DysDaemoN)
- now show "accept only in person" quests in clan quest list so know they exist (Varkon)
- fixed talk icon sometimes getting stuck above NPC heads
- now damage numbers will use commas if needed
- now large stats from most components have commas
- now dps on skills from components has commas if necessary
- check mark ui text is now centered better
- changed TextInput to be automatically centered left
- now widgets can override parent alignment
- item rarity is now color coded correctly in loot filter
- text in drop down box centered better
- fixed a lot of text alignment with different sized text
- updated copyright date
- changed PROTOCOL_VERSION to 125
- changed save version to 260
- fixed port in getAddressString (just a developer thing)
- added showBoundingBox so I could see where bounding boxes are exactly
- simplified ActorCovenant::shouldBreakTreaty quite a bit
- removed a "No fake entities left" message, just slows things down when things are already probably slow
- added cheat_noLose so I could test some things for longer periods of time with cheats
- improved cheat_playTestTeleport to vary teleport position better
- added a more generic hasAbility/providesAbility system
- fixed 32 variables set but never used warnings from Linux compiler
- fixed a potential clearing problem in StatusEffectBase::build
- fixed a String/char* conversion warning from Linux compilter in PlayerClient::savePlayer
- fixed GameShared::optimizeSkillDatabaseEntry removing statMults accidentally
- fixed 2 places in geometry.cpp where //* was causing warnings in Linux compiler
- fixed using add instead of push_backUnique in Level::getFullLevelsMakeUpLevel
- fixed a possible crash in reloadMenus (just a develop or modder thing)
- changed graphics string code to an enum
- simplified text code lock stuff
- now quests/clans are smart enough to only remove world modifier if not being applied by another quest/clan
- moved getValidLocation from UIHelp to UISystem so could use other places
- added showRadius command so I can see collision stuff better
- added a way to apply multipliers to percents and always stay within 0 and 1 range
- fixed UI_CONDITION_ARE_REPAIRING spelling
- added cheat_giveExperience
- simplified per game #defines a little
Write your comment!