here is a saved game with a few monsters and borg lol
Complete list of the 1460 lexicon.dic entries
Moderator: thunderchero
-
- Site Administrator aka Fleet Admiral
- Posts: 7970
- Joined: Fri Apr 25, 2008 2:00 am
- Location: On a three month training mission, in command of the USS Valiant.
Re: Complete list of the 1460 lexicon.dic entries
You do not have the required permissions to view the files attached to this post.
-
- BORG Trouble Maker
- Posts: 3258
- Joined: Sun Apr 27, 2008 2:00 am
- Location: Hamburg, Germany
Re: Complete list of the 1460 lexicon.dic entries
thanks, and indeed it shows the cube text here, but again not from lexicon.dic
and I didn't find it being shown in combat or by map tooltips or anywhere else either Given for the homeworld name it is only shown for specific race ui, I also changed and testet for all the other empires. it however is same for all of them. And I can't remember any event that mentions a specific cube either.
So I guess the monster ship names are read but never displayed.
You do not have the required permissions to view the files attached to this post.
-
- BORG Trouble Maker
- Posts: 3258
- Joined: Sun Apr 27, 2008 2:00 am
- Location: Hamburg, Germany
Re: Complete list of the 1460 lexicon.dic entries
I think I failed the most obvious. #206 likely is read for adding new cubes, and then saved as the ship name. Therefore when I load the savegame, the full text is still there, not the replacement. The same likely is the case for many other labels.
edit: I went through more than 100 turns but most of the cubes disappeared and not a single new one showed up. Still I believe that this is how #206 and others work I identified a matching text but didn't find a matching number.
edit: I went through more than 100 turns but most of the cubes disappeared and not a single new one showed up. Still I believe that this is how #206 and others work I identified a matching text but didn't find a matching number.
-
- Code Master
- Posts: 1962
- Joined: Sun Apr 27, 2008 2:00 am
Re: Complete list of the 1460 lexicon.dic entries
And Captain obvious strikes again! -> GShipList entry; see wiki of a guy called Flocke, IIRC he analysed the savegame files....
Alternatively, in my IDA database, just enter adr of the sub I specified.
Question is how you deal with adding monsters in savegames via UE (ship class from shiplist.sst or lexicon -> cube numbers and Chodak random).
Also remember stuff like the monster map programs for the AI files: viewtopic.php?p=34119#p34119
See loc_44FADA for new cubes added to the game.
Limitations for adding cubes to the game see random events: viewtopic.php?p=20540#p20540
I don't know how many bugs is too many but that point is reached somewhere before however many in BotF is.
-
- BORG Trouble Maker
- Posts: 3258
- Joined: Sun Apr 27, 2008 2:00 am
- Location: Hamburg, Germany
Re: Complete list of the 1460 lexicon.dic entries
put salt onto the wound
indeed the ship names are stored to the savegames, however with the few new games I already tried, till then I only spotted one single difference, that is the home system names. I confirmed now that they aren't related to what empire you play, but to whether you load a previous game or start a new one.
For the most text labels however they are not loaded from savegames.
And labels like the ship categories and classes still aren't read from the lexicon either.
Even the empire names in many cases aren't.
new game ship details: new game combat:
The IDA database is great, but only when you dig some deeper into the code and have analysed it yourself. I already had a look when you posted it, but from that code I clearly can't tell whether the read value is actually printed to any screen. So despite of being interesting and a good indication, it is by far no confirmation, specailly given the many other text duplicates.Spocks-cuddly-tribble wrote: ↑Sat Feb 05, 2022 3:48 pm Alternatively, in my IDA database, just enter adr of the sub I specified.
If someone likes to do some real proof, just rename #206 with UE for your next game and check on the borg when they show up!
Oh that's simple, I don't.Spocks-cuddly-tribble wrote: ↑Sat Feb 05, 2022 3:48 pm Question is how you deal with adding monsters in savegames via UE (ship class from shiplist.sst or lexicon -> cube numbers and Chodak random).
I know it is bugged, but I don't care on it for now.
You do not have the required permissions to view the files attached to this post.
-
- Code Master
- Posts: 1962
- Joined: Sun Apr 27, 2008 2:00 am
Re: Complete list of the 1460 lexicon.dic entries
Sorry mate, that monster stuff is very inconsistent and my description was a bit misleading (ship names feature vs. ship class[es] in shiplist.sst).
Monster ship data and text strings is not always handled the same way as major/minor ships.
Asm code is confusing, but at the very least you can see how the text string is composed (lexicon entry + trek.exe value for total cubes + trek.exe base number for this cube -> incremented for next cube [with reset bug when loading saved games]).
Looking at this code it writes the (for borg composed) lexicon string to [GShipList+0] should be shipname.
Monster ship names for GShipList:
206 XCube + two mumbers -> Cube %d of %d", borg cube name (asm 58FDD4 first cube number 233 / asm 58FDD8 total cubes 502412)
205 TheCrystalEntity -> shared!
160 Enormous|Juggernaut|Gigantic|Colossus|Leviathan|Tremendous -> Chodak random
115 TheCalamarain
418 Gomtuu
893 Outcast -> Tarellians
262 TheEdoGuardian
1389 EchoPapa607_2
970 Raider -> Husnock
For easy re-test -> impossible -> build warfleet with build cost of cube buildcost *1,25 -> after turn 11 press F6 key each turn until a cube gets added.
Still monsters shouldn't use the second ship class label in shiplist.sst+28h?
And yes, adding monsters via UE is not a good idea.
Monster ship data and text strings is not always handled the same way as major/minor ships.
Asm code is confusing, but at the very least you can see how the text string is composed (lexicon entry + trek.exe value for total cubes + trek.exe base number for this cube -> incremented for next cube [with reset bug when loading saved games]).
Looking at this code it writes the (for borg composed) lexicon string to [GShipList+0] should be shipname.
Monster ship names for GShipList:
206 XCube + two mumbers -> Cube %d of %d", borg cube name (asm 58FDD4 first cube number 233 / asm 58FDD8 total cubes 502412)
205 TheCrystalEntity -> shared!
160 Enormous|Juggernaut|Gigantic|Colossus|Leviathan|Tremendous -> Chodak random
115 TheCalamarain
418 Gomtuu
893 Outcast -> Tarellians
262 TheEdoGuardian
1389 EchoPapa607_2
970 Raider -> Husnock
Thunderchero already did this (see his note on Chodak random name, part of the same code).
For easy re-test -> impossible -> build warfleet with build cost of cube buildcost *1,25 -> after turn 11 press F6 key each turn until a cube gets added.
Still monsters shouldn't use the second ship class label in shiplist.sst+28h?
And yes, adding monsters via UE is not a good idea.
I don't know how many bugs is too many but that point is reached somewhere before however many in BotF is.
-
- BORG Trouble Maker
- Posts: 3258
- Joined: Sun Apr 27, 2008 2:00 am
- Location: Hamburg, Germany
Re: Complete list of the 1460 lexicon.dic entries
Thanks for the update. I take it as a proof then, am too lazy to test this ingame.Spocks-cuddly-tribble wrote: ↑Mon Feb 07, 2022 4:17 pm Looking at this code it writes the (for borg composed) lexicon string to [GShipList+0] should be shipname.
Still it is a difference whether TC confirmed #160 or #206. #160 is special and could be handled different.
True you verified it is used in same code routine, but many values are reused and mixed and unless you confirm the UI code you only can get for sure when you check it ingame. I'd however say chance is very low it is any different.
-
- Code Master
- Posts: 1962
- Joined: Sun Apr 27, 2008 2:00 am
Re: Complete list of the 1460 lexicon.dic entries
Even more context, look at the number of total cubes in the cube name of the saved game thunderchero gave you (in your picture above). asm 58FDD8 total cubes (default 502412) is unique and not shared.
I don't know how many bugs is too many but that point is reached somewhere before however many in BotF is.
-
- BORG Trouble Maker
- Posts: 3258
- Joined: Sun Apr 27, 2008 2:00 am
- Location: Hamburg, Germany
Re: Complete list of the 1460 lexicon.dic entries
I added a new main data category for the monsters, cause they are shared on so many screens and don't fit the spacecraft category:
MONSTERS
combat encounter, combat enemy menu, combat fleet details, combat events & summary events
## Data.Monsters ##
galaxy map tooltip & system panel tooltip
## Data.Monsters.ShipName ##
Further I added another combat data sub-group for the "VesselType", which is displayed in bottom combat battle fleet panel:
combat group details
## Data.Combat.VesselType ##
So these both actually are in use:
MONSTERS
combat encounter, combat enemy menu, combat fleet details, combat events & summary events
## Data.Monsters ##
98 TheBorg // confirmed by value change: combat encounter, combat fleet details 418 Gomtuu // confirmed by value change 970 ShipName.Raider // the raider by exception displays the loaded shipname: "Husnock raider" 115 TheCalamarain // confirmed by value change 159 TheChodak // confirmed by value change 205 TheCrystalEntity // confirmed by value change 262 TheEdoGuardian // confirmed by value change: combat encounter, combat fleet details, combat events & summary events 649 TheMinosians // confirmed by value change: Echo Papa 607 combat drone 1249 TheTarellians
galaxy map tooltip & system panel tooltip
## Data.Monsters.ShipName ##
418 Monsters.Gomtuu // confirmed by code analysis (SCT) 970 Raider // confirmed by code analysis (SCT): Husnock raider 206 XCube // confirmed by code analysis (SCT): "Cube %d of %d" 115 Monsters.TheCalamarain // confirmed by code analysis (SCT) 160 Chodak // confirmed by code analysis (SCT): randomly choosen -> "Enormous|Juggernaut|Gigantic|Colossus|Leviathan|Tremendous" 205 Monsters.TheCrystalEntity // confirmed by code analysis (SCT) 262 Monsters.TheEdoGuardian // confirmed by code analysis (SCT) and by value change: galaxy tooltip & system panel tooltip 1389 EchoPapa607 // confirmed by code analysis (SCT) 257 EchoPapa607_2 893 Outcast // confirmed by code analysis (SCT): Tarellians
Further I added another combat data sub-group for the "VesselType", which is displayed in bottom combat battle fleet panel:
combat group details
## Data.Combat.VesselType ##
1139 Ships // confirmed by value change: also for galaxy fleet & system build -> for all major races & Chodak (159) 207 BorgCubes // confirmed by value change 235 Devices // confirmed by value change: Minosian (649) "devices" (Echo Papa 607 combat drone) 1151 XY // confirmed by value change: "%1 %2" for Crystal_entity, Husnock_raider, Gaseous_lifeform, Unknown_lifeform and Edo_god
So these both actually are in use:
Spocks-cuddly-tribble wrote: ↑Sat Feb 05, 2022 10:46 am 235 Devices -> plural for combat drones (should be unused since BotF prevents more than one monster/sector, except for first placement of cube copies)
cf. 207 BorgCubes
-
- Past Administrator
- Posts: 2404
- Joined: Fri Jul 18, 2008 2:00 am
- Location: Your mom's bed ;)
Re: Complete list of the 1460 lexicon.dic entries
Yes, both values for cube ID are hard coded and already located. I had to find these when I switched the Crystal and Doomsday randoms. I believe it starts at ID 233 and adds a random value no more than 2 or 3. Meaning, the first cube you see will rarely be Cube 233, more likely to Cube 236 or 237. That must be why they decided not to use lexicon entry, so they could make the first Cube ID randomized to some degree. I'd wager they planned to do the same for the max Cube ID (as collective assimilates, cube count increase?)Spocks-cuddly-tribble wrote: ↑Tue Feb 08, 2022 5:38 am Even more context, look at the number of total cubes in the cube name of the saved game thunderchero gave you (in your picture above). asm 58FDD8 total cubes (default 502412) is unique and not shared.
-
- Code Master
- Posts: 1962
- Joined: Sun Apr 27, 2008 2:00 am
Re: Complete list of the 1460 lexicon.dic entries
Correct, looks as if it adds random 1-5 each time, even for the first cube.
But as told, after reloading a saved game it starts again based on 233 + random i.e. in this case you can have more than one cube with the same name.
1139 Ships -> should be also used for Tarellian 29
Monster switch is at 528900. But the code looks strange.
Due to a bug Husnock 2C should go to unk_5857B0?
Only Crystal Entity 25, Calamarain 27, Gomtuu 28 & Edo Guardian 2A should read monster names from next switch @ 4AEC50.
EDIT: Dear lord, it's even more intricate. sub_528920 then sub_44AD80 and both read sub_4AEC88
But as told, after reloading a saved game it starts again based on 233 + random i.e. in this case you can have more than one cube with the same name.
I see, so basically it's a list of ship types of each party in tactical combat, with the plural used even for single ships.
1139 Ships -> should be also used for Tarellian 29
Monster switch is at 528900. But the code looks strange.
Due to a bug Husnock 2C should go to unk_5857B0?
Only Crystal Entity 25, Calamarain 27, Gomtuu 28 & Edo Guardian 2A should read monster names from next switch @ 4AEC50.
EDIT: Dear lord, it's even more intricate. sub_528920 then sub_44AD80 and both read sub_4AEC88
I don't know how many bugs is too many but that point is reached somewhere before however many in BotF is.