Smart Spiders and Arrays

Post about your finished mods here.
relanat
Militia Commander
Militia Commander
Posts: 438
Joined: Tue Nov 05, 2013 9:56 am

Tue Feb 23, 2016 2:28 am

More random ramblings about stuff :) .

Maybe try a 50/50 or 75/25 chance of either a laser amplifier or a kinetic upgrade in the box. Evens it out in case you play Sapphire.

============================
A couple of times the Drake had nothing at all in it to loot. I went to the second system, opened the box and came back to Eridani. I sat on the stargate while the guards from the nearby Mining Stations killed the Drake. Then docked with the Drake wreck to find nothing at all. This happened twice in about 6 games.

It could be that the looting and damaging percentages in wrecks cancelled out the Arm or Array. You may have to place the item (Arm or Array) directly into the Drake wreck after it gets killed. But I'm not sure. Other times there is a lot of damaged and undamaged loot available.

============================
The attack feels overpowered with 6 or so Corsair II's. It's pretty much instant death for EI500 and Sapphire. They can't kill them quick enough and they can't get away. Even the Wolfen struggles a bit.
Also the Drake is prety hard to kill. All of these ships pictured below had been pummeling away at it for a couple of minutes on autopilot and it still ain't dead. Maybe take the patcher arm out or drop the armor back to Heavy Reactive.

Image

============================
I still like the idea of being able to give the Array (or whichever goodies) back to the Drake. It gives the player a chance to get away if the Charon forces are too great. It also makes the player think about the costs or benefits of trying to keep it.

gunship256
Militia Commander
Militia Commander
Posts: 451
Joined: Sat Jul 25, 2015 11:41 pm
Location: repairing armor

Tue Feb 23, 2016 5:42 am

Thanks for the feedback! As you may be able to tell, I worry about making my mods too powerful and giving the player too much of an advantage. I might be overdoing some of the worrying and killing off the player in the process.
Maybe try a 50/50 or 75/25 chance of either a laser amplifier or a kinetic upgrade in the box. Evens it out in case you play Sapphire.
That's a great idea. Do you think that makes it too easy to identify the refurbished patcher arm, though? Would it be better to leave the enhancer in the Drake as loot so the player has to kill the Drake in order to get this information?

EDIT: I misunderstood. You mean the kinetic enhancer, not the cannon accelerator! My bad.
A couple of times the Drake had nothing at all in it to loot. I went to the second system, opened the box and came back to Eridani. I sat on the stargate while the guards from the nearby Mining Stations killed the Drake. Then docked with the Drake wreck to find nothing at all. This happened twice in about 6 games.

It could be that the looting and damaging percentages in wrecks cancelled out the Arm or Array. You may have to place the item (Arm or Array) directly into the Drake wreck after it gets killed. But I'm not sure. Other times there is a lot of damaged and undamaged loot available.
Hmm... that's not good. The Drake might have run out of missiles, but it should still be dropping damaged items that were installed on it. I make a loot table with a 50/50 chance of leaving either an arm or an array, so something should be appearing every time the Drake dies.

This has never happened to me, so it might be that our Transcendence setups are different. If I were getting the problem in my games, I'd modify the compact solar panel array OnUpdate code (ExtSmartDevices.xml, line 392) from

Code: Select all

			<OnUpdate>
				; Check to see if device needs to hide or un-hide, and if so, do the action
				(block Nil
					(setq gItem (deviceUpdate gItem Nil) )
					)
				</OnUpdate>
to

Code: Select all

			<OnUpdate>
				; Check to see if device needs to hide or un-hide, and if so, do the action
				(block Nil
					(setq gItem (deviceUpdate gItem Nil) )
                                        (objSendMessage gSource gPlayerShip "If a smart solar panel array is screaming inside of a Drake's cargo hold and no one hears, did the screaming actually happen?")
					)
				</OnUpdate> 
and I'd modify the Drake's look table to make sure it always dropped an array (ExtSmartShips.xml, line 70) by changing

Code: Select all

			<Table>
				<Item chance="50" count="1" item="&itRefurbishedPatcherArm;"/>
				<Item chance="50" count="1" item="&itCompactSolarPanelArray;"/>
			</Table>
to this:

Code: Select all

			<Table>
				<Item chance="100" count="1" item="&itCompactSolarPanelArray;"/>
			</Table>
If the Drake is carrying the device, you'll see the device talking to you, and you'll have a better idea of where the problem is actually happening.
The attack feels overpowered with 6 or so Corsair II's. It's pretty much instant death for EI500 and Sapphire. They can't kill them quick enough and they can't get away. Even the Wolfen struggles a bit.
Also the Drake is prety hard to kill. All of these ships pictured below had been pummeling away at it for a couple of minutes on autopilot and it still ain't dead. Maybe take the patcher arm out or drop the armor back to Heavy Reactive.
I think you're right. It's asking too much of the player to upgrade to level 4 armor and buy a bunch of missiles just to take on the Drake, and the level 3 reward the Drake drops probably isn't worth the trouble. I originally had the patcher arm installed on the Drake to leave a clue that my mod has new types of armor repair devices, but if the Drake is going to drop an undamaged one now, it really doesn't need one that's installed. I can also drop the number of Corsairs from 6 to 3 if you think that will make the attack manageable.

It's sad that so many friendly ships can't kill the Drake quickly if the Drake can regenerate its armor. Maybe NPCs' fire rate adjust is too penalizing.
I still like the idea of being able to give the Array (or whichever goodies) back to the Drake. It gives the player a chance to get away if the Charon forces are too great. It also makes the player think about the costs or benefits of trying to keep it.
I like that idea too. I'm working on playerships at the moment and will be able to come back to rewrite the code for the Drake later on.
Last edited by gunship256 on Wed Feb 24, 2016 3:08 am, edited 1 time in total.

User avatar
sun1404
Militia Captain
Militia Captain
Posts: 527
Joined: Thu Nov 03, 2011 10:32 am
Location: Heretic. (Finally!)

Tue Feb 23, 2016 2:01 pm

I believe that a 50% chance for each item don't add up into a hundred percent of one or the other showing up. It seems to be simply that each of them has a 50/50 chance of showing up or not, so in effect there would be equal chances of :
-an Arm showing up,
-an Array showing up,
-both showing up,
-none showing up at all,


I don't know if there's a way to force one item or another to show, except by express script.
Yes, look at my avatar, I have a wyvera type ship.

gunship256
Militia Commander
Militia Commander
Posts: 451
Joined: Sat Jul 25, 2015 11:41 pm
Location: repairing armor

Fri Feb 26, 2016 4:36 am

relanat wrote:A couple of times the Drake had nothing at all in it to loot.
I think I figured this out. There seems to be a friendly NPC in 1.7 alpha that docks with wrecks and loots them without scuttling them. I didn't get a good look at the ship, but I think it's an EI100 freighter that docks with one of the small stations in the Eridani crescent.

I had an "empty" Drake today after I saw a green dot dock with it. I also blew up Sisters of Domina and came back later to loot it, but the destroyed station had no items in it.

I haven't looked at the XML for 1.7 alpha yet, so I haven't confirmed that there's a ship that does this, although I strongly suspect that this is the cause.

relanat
Militia Commander
Militia Commander
Posts: 438
Joined: Tue Nov 05, 2013 9:56 am

Fri Feb 26, 2016 4:46 am

Yes. You could be right. I had a vague impresion of a ship being near the Drake wreck on one occasion when it happened but put it down as "Nope, that doesn't happen so it couldn't be that :roll: ".

gunship256
Militia Commander
Militia Commander
Posts: 451
Joined: Sat Jul 25, 2015 11:41 pm
Location: repairing armor

Sat Feb 27, 2016 6:54 pm

It happened again, and I got within 30 ls this time. The ship was a Wolfen. It docked with the Drake, undocked without scuttling the Drake, and went straight for the gate.

gunship256
Militia Commander
Militia Commander
Posts: 451
Joined: Sat Jul 25, 2015 11:41 pm
Location: repairing armor

Sat Feb 27, 2016 11:49 pm

I've uploaded a new version to Xelerus. As always, let me know what I can improve!

CHANGES
0.26 alpha

The Drake attack is overpowered. Reduced the number of Corsair-II's from 6 to 3 and removed the Drake's refurbished patcher arm.

Changed the code so that the laser amplifier is no longer a guaranteed item in the box. Instead, there is a random chance of a laser amplifier, kinetic upgrade, particle source upgrade, or hexagene booster.

User avatar
JohnBWatson
Fleet Officer
Fleet Officer
Posts: 1369
Joined: Tue Aug 19, 2014 10:17 pm

Sun Feb 28, 2016 7:13 am

I just had an interesting(but probably difficult) idea for the Drake attack, once the Drake item collection is fully implemented. Rather than attacking immediately, it could call to the player to stop moving and drop the item, then hold its fire. If the player fires or moves more than 25ls, the attack would proceed as normal. If not, it would peacefully wait for the item to be ejected.

This might make the possibility of paying the Drake off more obvious.

relanat
Militia Commander
Militia Commander
Posts: 438
Joined: Tue Nov 05, 2013 9:56 am

Wed Mar 16, 2016 2:11 am

Um, there isn't an array in the box anymore! (0.26a) And the 3 Corsair-IIs is much better. Still tough but not deadly 95% of the time. You could try a couple of Corsairs as well as a couple of Corsair-IIs. Or maybe a Viking. Or a random mix. One of the reasons the Drake is so tough is because of the compartment stuff. Very hard to kill without the right weapons.

======================
gunship256 wrote:I originally had the patcher arm installed on the Drake to leave a clue that my mod has new types of armor repair devices.
Hey, that's clever. Good thinking.

======================
And thanks for that info, sun1404. Good to know. Obvious now you say it. But confusing when you don't know.

======================
In Commonwealth.xml in 1.7a1a Transcendence_Source you will find UNID="&evCommTrafficBehaviour;".

It has code that makes NPC ships loot wrecks and scuttle them afterwards if they fit the right criteria.

Dirty little sneaks. You may have to add something to the Drake wreck to change the criteria so that these scoundrels don't steal the goodies (but it's quite acceptable when I loot everything in sight :lol:.)

====================
And JBW's idea is great. You could use a couple of messages from the Drake to explain the situation to the player. And the code could be the base for a heap of ideas. Search and seizure by the Commonwealth or the Black Market or maybe stopping and trading goods with other ships (you could buy stuff off the Scavenger Nomads). Nice one.

====================
Little bug. I got rid of the Corsairs and was pounding away at the Drake (jumping back through the gate to repair armor when necessary) when I got down to 0 hp on my front armor. The Drake then gave me the message "Am I good or am I good?" which is a <OnObjDestroyed> message. I left the system and didn't realise until later that it would then try to dock with my wreck (except I wasn't dead). Not sure but this might, on a very rare occasion, mess things up with the Drake not attacking because it thinks the player is dead when it's just 0 armor left. When I gated back in with full armor again it went back to trying to kill me. Good luck sorting that out :).

relanat
Militia Commander
Militia Commander
Posts: 438
Joined: Tue Nov 05, 2013 9:56 am

Tue Mar 22, 2016 5:18 am

relanat wrote:Um, there isn't an array in the box anymore!
Oh, yeah. That's right. You took it out. I really should get more sleep! :lol:

It's still a tough mission. Maybe (easy for me to say) make it an escalating response. First gate you go through has a couple of fighters attacking and giving messages like "We know you took our stuff, give it back". Then the next gate can be the Drake saying "Now you die" Gives you a little more room to build up your firepower and defence before the Charon response gets to overpowering.

OK, it's not the 0 hp on the armor that gives the <OnObjDestroyed> message, it gating out of the system where the attack is happening. But only the first time you gate. After the first time if you gate back in then out again you don't get a message. No matter how many times you gate. So that bug where it won't attack probably will never happen. Not sure why it's happening though. I thought it might be because the playership gets destroyed when gating and recreated when it emerges in the next system. But it only happens once. Shrugs.

Or if you want a real challenge have the box appear in the second or third system. Make it within sight of the stargate so it will get looted.

Oddly enough the NPC ships looting the Drake wreck never scuttle it. Even when I lured the Drake to the Starton Eridani area and the wreck was well inside the range where all wrecks gets scuttled. They loot it but never scuttle it.
Last edited by relanat on Fri Mar 25, 2016 3:33 pm, edited 1 time in total.

Peter
Commonwealth Pilot
Commonwealth Pilot
Posts: 91
Joined: Wed May 07, 2014 1:11 am
Location: New Zealand

Wed Mar 23, 2016 11:01 am

This might be a bit of a necro post, but I love the idea behind this mod. I've always thought that there weren't enough solar panels :D
Time to become one of the Heliotropes!
My dream is to one day discover that someone who plays transcendence lives near me and goes to my school. Then I can finally have a friend.
---
Why must I keep running into that wall, impossibility?

gunship256
Militia Commander
Militia Commander
Posts: 451
Joined: Sat Jul 25, 2015 11:41 pm
Location: repairing armor

Mon Mar 28, 2016 5:50 am

There's a new version now. It has the dockscreens that relanat has been waiting for along with a number of other changes.

I think this mod is getting close to moving from alpha to beta. Let me know how I can improve it further!
Settings 2016 03 28.PNG
Settings 2016 03 28.PNG (18.27 KiB) Viewed 1660 times
CHANGES
0.27 alpha

Oh-so-many changes!

Instead of being stored in global variables, settings are now stored on gSource. This allows the game to remember the settings from session to session. It also prevents NPC devices from accessing the settings on the playership devices and vice versa.

The settings are more logical now and can account for a wider set of situations. For example, there is a way to keep all the devices uninstalled in order to sell or jettison them. There is a setting that makes them always uninstall when shields are down, which is useful when dealing with "friendly" Black Market Molotoks. There is now also a setting that makes the devices usable for shields that leak damage through, such as the Trenton.

The settings are now changed through a dockscreen instead of by invoking devices. The ship interior screen has a link to the settings screen for this mod.

<Invoke> code was removed from patch spiders and solar panel arrays, making the "U" menu much cleaner.

The Drake attack is still overpowered. Reduced the number of Corsair-IIs from 3 to 1.

Dirty little sneaks. You may have to add something to the Drake wreck to change the criteria so that these scoundrels don't steal the goodies (but it's quite acceptable when I loot everything in sight :lol:.)
A bunch of NPCs, including Wolfens and freighters, have been looting wrecks. This is more inconvenient that having Salvagers do it, since I can always find Salvagers later and get the loot back. On the other hand, the change does create an element of urgency to looting wrecks.
OK, it's not the 0 hp on the armor that gives the <OnObjDestroyed> message, it gating out of the system where the attack is happening. But only the first time you gate. After the first time if you gate back in then out again you don't get a message. No matter how many times you gate. So that bug where it won't attack probably will never happen. Not sure why it's happening though. I thought it might be because the playership gets destroyed when gating and recreated when it emerges in the next system. But it only happens once. Shrugs.
That's weird. I'm going to have to try duplicating that one!
I just had an interesting(but probably difficult) idea for the Drake attack, once the Drake item collection is fully implemented. Rather than attacking immediately, it could call to the player to stop moving and drop the item, then hold its fire. If the player fires or moves more than 25ls, the attack would proceed as normal. If not, it would peacefully wait for the item to be ejected.

This might make the possibility of paying the Drake off more obvious.
And JBW's idea is great. You could use a couple of messages from the Drake to explain the situation to the player. And the code could be the base for a heap of ideas. Search and seizure by the Commonwealth or the Black Market or maybe stopping and trading goods with other ships (you could buy stuff off the Scavenger Nomads). Nice one....

It's still a tough mission. Maybe (easy for me to say) make it an escalating response. First gate you go through has a couple of fighters attacking and giving messages like "We know you took our stuff, give it back". Then the next gate can be the Drake saying "Now you die" Gives you a little more room to build up your firepower and defence before the Charon response gets to overpowering....

Or if you want a real challenge have the box appear in the second or third system. Make it within sight of the stargate so it will get looted.
These are excellent ideas. I'm going to have to get much better at coding missions before I can attempt it, though. This is definitely on the list of things to do, but I want to finish up the work on dockscreens first.
This might be a bit of a necro post, but I love the idea behind this mod. I've always thought that there weren't enough solar panels :D
Time to become one of the Heliotropes!
Me too. I made this mod because I was tired of fighting the fuel clock, and I wanted to recharge my reactor and/or repair armor without having to use device slots to do it. Let me know if there's anything I should fix or add!

relanat
Militia Commander
Militia Commander
Posts: 438
Joined: Tue Nov 05, 2013 9:56 am

Wed Apr 06, 2016 5:36 am

Doing a bit of a playthrough with this mod but haven't got far. All good. I've not had a crash with any version since I changed to 1.7. New dockscreen is good. The leaking shields thing for the Trenton is an excellent idea. This kind of detail IMO separates the good mods from the great mods.

Only things so far:
Maybe stick info on the recharging rates in the descriptions for the arrays. Let's people know which one is better/faster than the other.
I'm not sure if it's a convention in the game but maybe add the device management option second from the bottom in the Ship's Interior dockscreen. Most mods I've used do this to (I assume) mess up the standard layout of the game the least amount possible.

Still get the Nil,nil device slot bug in the Misc Devices screen as well. Someone else is having trouble with updating screens. I'll try and find the reference. It might help. EDIT: It's AP in The Backroads with a casino(?) not being cooperative. But he hasn't fixed it yet. Looking at the code in your mods I saw scrRefreshScreen. Possibly if you can get this function in the code after the arrays/spiders uninstall that might help to fix it.

Good stuff. This mod is well on its way to being one of my 'must have' mods when I'm playing.

relanat
Militia Commander
Militia Commander
Posts: 438
Joined: Tue Nov 05, 2013 9:56 am

Fri Apr 15, 2016 3:56 am

For the Nl, nil device display bug in the Misc Devices dockscreen possibly putting something in your mod to modify "&dsRPGManageMiscDevices;" will help (in RPGArmorDockScreens.xml Line378). If you overwrite the pane so it includes a scrRefreshScreen somewhere this might make the empty device slot disappear. Not sure, that code is way over my head.

gunship256
Militia Commander
Militia Commander
Posts: 451
Joined: Sat Jul 25, 2015 11:41 pm
Location: repairing armor

Fri Apr 15, 2016 11:11 pm

relanat wrote:For my own curiosity, in ExtPatcherVirtual.xml what does <MiscellaneousDevice/> do? Is it something required by virtual devices?
Necro reply: The code was in there as a safety in case another mod tried to install the item. I didn't think it would ever happen, but, surprisingly, it actually did in the case of the box with the faded label when my mod is used at the same time as The Backroads.

It turns out that the box was the item I *didn't* add <MiscellaneousDevice/> to, so I had to isolate the incompatible mods through testing, check the debug log, compare my code with the decompiled TBR code, and implement a temporary fix on my end.

Unfortunately, making the box a MiscellaneousDevice means that stations will be able to install and uninstall it. (EDIT) So I added code to make the box uninstallable at stations, and if the box does get installed, it now uninstalls itself OnUpdate. The fixes will be incorporated into the next alpha release.

This reminds me why I have to work on making my code more robust....

http://ministry.kronosaur.com/record.hexm?id=55013
relanat wrote:Maybe stick info on the recharging rates in the descriptions for the arrays. Let's people know which one is better/faster than the other.
That's a great suggestion. Do you have any ideas for the best way to go about this? I'm not sure what units the game uses for recharge rates. I've already taken a stab at qualitative descriptions in version of the mod that you have, but maybe I can do better; let me know how the descriptions can improve.
I'm not sure if it's a convention in the game but maybe add the device management option second from the bottom in the Ship's Interior dockscreen. Most mods I've used do this to (I assume) mess up the standard layout of the game the least amount possible.
That's a great idea. The change will show up in the next release.
Still get the Nil,nil device slot bug in the Misc Devices screen as well. Someone else is having trouble with updating screens. I'll try and find the reference. It might help. EDIT: It's AP in The Backroads with a casino(?) not being cooperative. But he hasn't fixed it yet. Looking at the code in your mods I saw scrRefreshScreen. Possibly if you can get this function in the code after the arrays/spiders uninstall that might help to fix it.
That's a really good idea. I don't know if there's a function I can use to test whether a screen is currently active, and I'm not sure what will happen if I call scrRefreshScreen when no screen is active. I'll have to test this and hopefully incorporate a fix in the next release.
relanat wrote:For the Nl, nil device display bug in the Misc Devices dockscreen possibly putting something in your mod to modify "&dsRPGManageMiscDevices;" will help (in RPGArmorDockScreens.xml Line378). If you overwrite the pane so it includes a scrRefreshScreen somewhere this might make the empty device slot disappear. Not sure, that code is way over my head.
That's also a good idea, but I'd like to avoid overwriting that screen if I can, especially since it's a pretty important one. I really want to be able to use typGetXML and typCreate to do the overwrite, but I've been getting errors when I use typCreate to overwrite entitites that already exist. I'm not sure what to do about this yet. Here's the rather light documentation on what I'd like to do (scroll down to "XML Manipulation and Override"):

http://multiverse.kronosaur.com/news.hexm?id=1063

Post Reply