[Mod] "Simoom's Lantern" - Ultimate Cheat Menu
Moderators: Moderators for English X Forum, Scripting / Modding Moderators
-
- Posts: 1839
- Joined: Fri, 18. Jul 14, 05:28
-
- Posts: 3188
- Joined: Fri, 4. May 12, 07:40
-
- Posts: 8629
- Joined: Thu, 12. Oct 06, 17:19
-
- Posts: 3548
- Joined: Sun, 8. Apr 12, 09:40
as far nothing is changed on vanilla AI-shipyard script the ship will get "explore" (move die) because it is simply to have use of delivered ressources, nothing more
but with some changes, the ship can used as Trader like other ships, maybe better, because Marodeur-Pirates will not take care about Ships with "build"-purpose
but with some changes, the ship can used as Trader like other ships, maybe better, because Marodeur-Pirates will not take care about Ships with "build"-purpose
-
- Posts: 1110
- Joined: Sat, 30. Oct 10, 14:14
AHA! Tracked down the cause of the assigned station crew disappearing! No solution yet, simply found the cause.
It would seem that there's something inherently different about crew members generated by the mod (via "Summon Personnel") from the "normal" crew you can hire from stations.
Any station crew generated by "Summon Personnel" would disappear when assigned to a player station, when the player leaves zone. However, crew you HIRE normally from an NPC station will not disappear.
It would seem that the characters generated by "Summon Personnel" is being flagged as "generic" NPC's, not player crews, and therefore being despawned by the NPC generator ("ai_unit"). I just need to figure out why that is.
For now, please hire your station crew "normally", or simply use the ones spawned with the station.
It would seem that there's something inherently different about crew members generated by the mod (via "Summon Personnel") from the "normal" crew you can hire from stations.
Any station crew generated by "Summon Personnel" would disappear when assigned to a player station, when the player leaves zone. However, crew you HIRE normally from an NPC station will not disappear.
It would seem that the characters generated by "Summon Personnel" is being flagged as "generic" NPC's, not player crews, and therefore being despawned by the NPC generator ("ai_unit"). I just need to figure out why that is.
For now, please hire your station crew "normally", or simply use the ones spawned with the station.
-
- Posts: 1839
- Joined: Fri, 18. Jul 14, 05:28
-
- Posts: 3188
- Joined: Fri, 4. May 12, 07:40
@ Alex
This bug is only related to this mod. When you place station you get crew already inside so you don't need to place anyone. But if you want to replace that crew that's when you start having thise problems. I haven't used your mod for some time now but i think they work much differently.
Edit: Also Simoom have function where you can turn station to NPC and with working manager script (especially for shipyards). So that might be one of reasons why this is happening.I suck in making mods (i can do only some basic XML file editing) but im pretty sure this was not easy and many things that can go wrong...
This bug is only related to this mod. When you place station you get crew already inside so you don't need to place anyone. But if you want to replace that crew that's when you start having thise problems. I haven't used your mod for some time now but i think they work much differently.
Edit: Also Simoom have function where you can turn station to NPC and with working manager script (especially for shipyards). So that might be one of reasons why this is happening.I suck in making mods (i can do only some basic XML file editing) but im pretty sure this was not easy and many things that can go wrong...
It's not world hunger because we can't feed poor,it's because there will never be enough to feed the rich .....
-
- Posts: 1110
- Joined: Sat, 30. Oct 10, 14:14
Guys, I found the cause of the issue, and filed a bug report here:
http://forum.egosoft.com/viewtopic.php? ... 75#4609675
The issue has to do with the way NPC's are categorized when spawned. If an NPC is created using <create_cue_actor>, the value $customactor is set, and this NPC will not receive a "timeout" value (which will destroy the NPC in 10-20 minutes, or destroy it immediately if the player leaves the zone the NPC is in - which is the case if you assign him to a station and then leave).
All NPC's created using <create_platform_actor> (which is pretty much 99% of the NPC's you see in game) will receive a "timeout" value by default, because all NPC's are meant to be temporary. The ONLY exception is if the NPC is already a controlentity at the time of spawning (such as the ones spawned alongside a station - which is why the station crew created by "Summon Stations" do not disappear).
Now, when you hire a "normal" NPC (created by <create_platform_actor>), this timeout value gets cancelled. The problem is if an NPC is spawned directly onto the Skunk using <create_platform_actor>, already owned by you, then he WILL have a timeout value that never gets cancelled (because you never "hired" him). This means he will disappear the moment you assign him to a station and leave the zone.
At this time, the only way to fix this issue is to avoid using <create_platform_actor> completely for spawning NPC crew directly onto the Skunk. I am already working on the fix, will post an update in a minute.
@ alexalsp - If you are using <create_cue_actor> in "setup_npc_cheat_menu.xml", you are fine. Avoid <create_platform_actor> (except for specialists, they don't have a timeout value by default)
http://forum.egosoft.com/viewtopic.php? ... 75#4609675
The issue has to do with the way NPC's are categorized when spawned. If an NPC is created using <create_cue_actor>, the value $customactor is set, and this NPC will not receive a "timeout" value (which will destroy the NPC in 10-20 minutes, or destroy it immediately if the player leaves the zone the NPC is in - which is the case if you assign him to a station and then leave).
All NPC's created using <create_platform_actor> (which is pretty much 99% of the NPC's you see in game) will receive a "timeout" value by default, because all NPC's are meant to be temporary. The ONLY exception is if the NPC is already a controlentity at the time of spawning (such as the ones spawned alongside a station - which is why the station crew created by "Summon Stations" do not disappear).
Now, when you hire a "normal" NPC (created by <create_platform_actor>), this timeout value gets cancelled. The problem is if an NPC is spawned directly onto the Skunk using <create_platform_actor>, already owned by you, then he WILL have a timeout value that never gets cancelled (because you never "hired" him). This means he will disappear the moment you assign him to a station and leave the zone.
At this time, the only way to fix this issue is to avoid using <create_platform_actor> completely for spawning NPC crew directly onto the Skunk. I am already working on the fix, will post an update in a minute.
@ alexalsp - If you are using <create_cue_actor> in "setup_npc_cheat_menu.xml", you are fine. Avoid <create_platform_actor> (except for specialists, they don't have a timeout value by default)
-
- Posts: 1211
- Joined: Sat, 15. Oct 11, 04:12
Re: feedback and some bug reports
That "??????" all over has nothing to do with the mod, I had that happen to me a few times. Can't recall if I saw that happen before 4.0 or after.icanfly wrote:Hi Simoom,
1. Taking over an NPC station to yourself makes a bug where all the personal has a ?????????????? and you can not change any options like manager acount and so on. By reloading the game it works fine. I have to say thought that also used other station mods like StationEngineer and populate player stations, so i am not sure if the mentioned mods have a compatibility issue (sorry i did want to look into the dubug log, but its was over 380 MB big, so i gave up, most ot the errors where caused by CES).
“Logic will get you from A to B. Imagination will take you everywhere.” - Albert Einstein
-
- Posts: 1110
- Joined: Sat, 30. Oct 10, 14:14
Version updated - the issue with crew disappearing has been fixed! Even added some new extra goodies for you good folks (race selection for crew spawning) - below is the new changelog.
Update 5/3/16:
Update 5/3/16:
- [New Feature] "Repair Station Wreck": Restores wrecked NPC stations in player's current zone. Feature not yet functional. Codes are in place, but the detection routine isn't yet working.
- [Improvement] "Claim Target": Feature now automatically sets the target's status to fully revealed before setting the owner faction to the player. This should circumvent the UI glitch where a NPC ship or station that has been turned to you still shows "???" under its details.
- [Improvement] "Summon Personnel": Race selection now available! Choose from Argon, Canteran, Teladi, or Split crew!
- [Bug fix] "Summon Personnel": Crew created by this feature no longer despawn when player leaves zone (after assigning the crew elsewhere). Issue was tracked down to <create_platform_actor>, which doesn't include a safety check to exclude player-owned actors from being assigned a "timeout" value (technically a dev oversight, though under normal circumstances player-owned platform actors wouldn't spawn directly onto the Skunk without being hired - and the hiring action is what triggers the timeout cancellation). This feature now uses <create_cue_actor> to circumvent the issue.
Last edited by Simoom on Fri, 6. May 16, 17:41, edited 1 time in total.
-
- Posts: 3188
- Joined: Fri, 4. May 12, 07:40
-
- Posts: 1110
- Joined: Sat, 30. Oct 10, 14:14
-
- Posts: 3188
- Joined: Fri, 4. May 12, 07:40
Thanks for info I haven't tried God mod yet but I will check it out.Simoom wrote:Your shield will not drain from boosting when "Immortality" (god mode) is enabled.Nikola515 wrote:Nice update
Would it be possible to disable boost/shield draining. This would be useful when it comes to exploring. Especially exploring sectors without highways.....
Edit: Another bug that I have discovered (not sure if it is bug). When using X-perimental jump when docked inside station whole station will jump with you. Docked in cap ship will do the same thing. All though I must agree it is somewhat fun
Edit2: Also I noticed that warehouse that I summoned (never changed to NPC) is having player engineer.
http://images.akamai.steamusercontent.c ... 8C2E57B0A/
Edit3: I did some more testing and it looks like this is case with every new summoned station and not just warehouse. It is nice not to worry about getting your stations destroyed
It's not world hunger because we can't feed poor,it's because there will never be enough to feed the rich .....
-
- Posts: 1110
- Joined: Sat, 30. Oct 10, 14:14
The script is written to jump the "container" of the Skunk (whatever it is docked at) if the player is docked somewhere. This is for convenience reasons (so if you are docked on a capship, you don't have to undock to jump).Nikola515 wrote:Edit: Another bug that I have discovered (not sure if it is bug). When using X-perimental jump when docked inside station whole station will jump with you. Docked in cap ship will do the same thing. All though I must agree it is somewhat fun
I should probably disallow the whole station being jumped along though... That's just silly.
This is intended. Stations are actually meant to have engineers, regardless of player or NPC. Egosoft disabled the ability for players to assign an Engineer to a station, because they want to force players to do station repairs through the Architect/CV (which is annoying, but I understand why they implemented it that way). But by default all stations can accommodate engineers (which is why w.evans' "Station Engineers" mod is literally two lines of code - all it does is enable the player to assign engineers to stations, and Egosoft's own scripts handle the rest).Nikola515 wrote:Edit2: Also I noticed that warehouse that I summoned (never changed to NPC) is having player engineer.
http://images.akamai.steamusercontent.c ... 8C2E57B0A/
Edit3: I did some more testing and it looks like this is case with every new summoned station and not just warehouse. It is nice not to worry about getting your stations destroyed
I figured people who don't want engineers on their stations can just unassign them (tell them to "Come back on board").
-
- Posts: 3188
- Joined: Fri, 4. May 12, 07:40
-
- Posts: 3548
- Joined: Sun, 8. Apr 12, 09:40
if you would use player.primaryship.owner instead of faction.player you can with set_cover_owner (at player+ship) realize simple change into each faction without great changesSimoom wrote: "Claim Target": Feature now automatically sets the target's status to fully revealed before setting the owner faction to the player.
you only need to make at the relevant positions a switch to npc-scripts in case they different
-
- Posts: 1110
- Joined: Sat, 30. Oct 10, 14:14
I am not too sure how the "realowner" and "coverowner" system works - can you elaborate on this?Marvin Martian wrote:if you would use player.primaryship.owner instead of faction.player you can with set_cover_owner (at player+ship) realize simple change into each faction without great changesSimoom wrote: "Claim Target": Feature now automatically sets the target's status to fully revealed before setting the owner faction to the player.
you only need to make at the relevant positions a switch to npc-scripts in case they different
-
- Posts: 3548
- Joined: Sun, 8. Apr 12, 09:40
set
unset
at cover state player.primaryship.owner will return the coverfaction (or faction.player if not covered)
player.primaryship.trueowner is always faction.player (or what faction the object is)
i know there is a .coverowner (or something like that), but no idea for what is good for, maybe it returns false in uncovered state - i think .owner is always good enough
so use for conversation coditions if you check about player stuff better always about .trueowner (or .isplayerowned should return also true i think, not tested yet) instead of .owner if you think about to use coverfunctions
Code: Select all
<set_cover_owner object="player.primaryship" faction="$coverfaction"/>
Code: Select all
<set_cover_owner object="player.primaryship"/>
at cover state player.primaryship.owner will return the coverfaction (or faction.player if not covered)
player.primaryship.trueowner is always faction.player (or what faction the object is)
i know there is a .coverowner (or something like that), but no idea for what is good for, maybe it returns false in uncovered state - i think .owner is always good enough
so use for conversation coditions if you check about player stuff better always about .trueowner (or .isplayerowned should return also true i think, not tested yet) instead of .owner if you think about to use coverfunctions
-
- Posts: 8629
- Joined: Thu, 12. Oct 06, 17:19