Mod Testing Environment (1.2) (AE Compatible)

Discuss and distribute tools and methods for modding. Moderator - Grognak
featherwings
Posts: 40
Joined: Tue May 07, 2013 6:27 am

Re: Mod Testing Environment (1.2) (AE Compatible)

Postby featherwings » Wed May 21, 2014 9:58 am

English Narwhal wrote:Your knowledge of the 'code', or XML, is astounding. I've never seen a 'ten deep code nest' in the resource XML, despite having seen all the XML files. Where is this block of code?


It's new - I wanted to be able to give repeated autorewards, so it looks like this:

Code: Select all

<event name="TESTBED_REWARDCHAIN_STANDARD">
   <text>Here, have this.</text>
   <autoReward level="HIGH">standard</autoReward>
   <choice>
      <text>Now do it nine more times!</text>
      <event>
         <text>Two...</text>
         <autoReward level="HIGH">standard</autoReward> <!---Are you ready to climb the mountain?--->
         <choice>
            <text>Sweet.</text>
            <event>
               <text>Three...</text>
               <autoReward level="HIGH">standard</autoReward>
               <choice>
                  <text>Sweet.</text>
                  <event>
                     <text>Four...</text>
                     <autoReward level="HIGH">standard</autoReward>
                     <choice>
                        <text>Sweet.</text>
                        <event>
                           <text>Five...</text>
                           <autoReward level="HIGH">standard</autoReward>
                           <choice>
                              <text>Sweet.</text>
                              <event>
                                 <text>Six...</text>
                                 <autoReward level="HIGH">standard</autoReward>
                                 <choice>
                                    <text>Sweet.</text>
                                    <event>
                                       <text>Seven...</text>
                                       <autoReward level="HIGH">standard</autoReward>
                                       <choice>
                                          <text>Sweet.</text>
                                          <event>
                                             <text>Eight...</text>
                                             <autoReward level="HIGH">standard</autoReward>
                                             <choice>
                                                <text>Sweet.</text>
                                                <event>
                                                   <text>Nine...</text>
                                                   <autoReward level="HIGH">standard</autoReward>
                                                   <choice>
                                                      <text>Sweet.</text>
                                                      <event>
                                                         <text>Ten! That should be it!</text>
                                                         <autoReward level="HIGH">standard</autoReward>
                                                         <choice hidden="true">
                                                            <text>You can stop pressing "1" now.</text>
                                                            <event>
                                                               <text>You've climbed the mountain!</text>
                                                               <item_modify>
                                                                  <item type="fuel" min="-1000000" max="-1000000"/>
                                                               </item_modify>
                                                            </event>
                                                         </choice>
                                                         <choice hidden="true">
                                                            <text>Thanks!</text>
                                                            <event load="TESTBED_WHATDO_NO_MONE"/>
                                                         </choice>
                                                      </event>
                                                   </choice>
                                                </event>
                                             </choice>
                                          </event>
                                       </choice>
                                    </event>
                                 </choice>
                              </event>
                           </choice>
                        </event>
                     </choice>
                  </event>
               </choice>
            </event>
         </choice>
      </event>
   </choice>
   <choice hidden="true">
      <text>Thanks, that's enough!</text>
      <event load="TESTBED_WHATDO_NO_MONE"/>
   </choice>
</event>                                       


And then there's TESTBED_REWARDCHAIN_WEAPONS_1 through _9, followed by the same for drones and augments. It's really, really dumb and awful but part of this whole exercise was to push into the limits of FTL's engine.

It already adds a noticeable few seconds to sector load times, which is pretty meh :/

Sleeper Service wrote:...Event trees with a lot of levels and branches eventually cause crashes because of this. There was a ship customization mod that sent you into a modified crystal sector after each event choice and set the customization event as the starting event for the sector. That actually makes loops possible. A technique that could also be something to be considered for this mod.


That's a thing the mod already does - it loops the first sector repeatedly, sending you back to the start of a new crystal testing sector when you hit the exit beacon. I visited some 700 beacons on one particular Testrel putting together my weapon attribute chart.
User avatar
Sleeper Service
Posts: 2305
Joined: Sun Mar 24, 2013 8:49 pm

Re: Mod Testing Environment (1.2) (AE Compatible)

Postby Sleeper Service » Mon Jun 02, 2014 4:02 pm

featherwings wrote:That's a thing the mod already does - it loops the first sector repeatedly, sending you back to the start of a new crystal testing sector when you hit the exit beacon. I visited some 700 beacons on one particular Testrel putting together my weapon attribute chart.

Yeah but it could also do this after each individual event outcome and defeated enemy. Might be useful in order to streamline the whole testing process a little more.
XiaoXiaoMan
Posts: 14
Joined: Mon Sep 02, 2013 12:42 am

Re: Mod Testing Environment (1.2) (AE Compatible)

Postby XiaoXiaoMan » Wed Jun 11, 2014 7:15 pm

I tried to install my mod, MTE and the custom content patch, in that order, but all I keep getting is this:

Patching failed: java.util.NoSuchElementException: <findName> was set to require results but found none (/wrapper/findName(TESTBED_PICKRACE)/findLike/findLike/findName(TB_CCP_DUMMY)).
featherwings
Posts: 40
Joined: Tue May 07, 2013 6:27 am

Re: Mod Testing Environment (1.2) (AE Compatible)

Postby featherwings » Fri Jun 13, 2014 5:36 am

Huh; if I had to take a guess it'd be in the advanced slipstream XML code, which I haven't touched (and I'm not sure what it's doing TBH)

Try loading MTE and CCP without your mod, and then try loading your mod and the MTE without the CCP, and report back?
User avatar
Sleeper Service
Posts: 2305
Joined: Sun Mar 24, 2013 8:49 pm

Re: Mod Testing Environment (1.2) (AE Compatible)

Postby Sleeper Service » Thu Jul 24, 2014 8:46 pm

Hey Taxi, are you still around? I'd like to ask for permission to use your target dummy ship model in Captains Edition. It will appear on a deserted Rebel training yard for the player to take potshots on. You will be duly credited of course. Am I allowed to use the ship model?
User avatar
TaxiService
Posts: 204
Joined: Mon Dec 23, 2013 6:04 pm

Re: Mod Testing Environment (1.2) (AE Compatible)

Postby TaxiService » Tue Aug 26, 2014 10:25 am

>are you still around?
Not as much as i'd like. : \ but of course! You can use it however you'd like to! : )
ImageImageImageImageImage
User avatar
Biohazard063
Posts: 412
Joined: Fri Feb 14, 2014 4:38 pm

Re: Mod Testing Environment (1.2) (AE Compatible)

Postby Biohazard063 » Fri May 01, 2015 7:48 pm

Hey,

Starting of by saying you got a great mod here.
Really shaved a lot of my time creating ships with this.

I've got an issue with the Custom Content Patch though.

If I load my ship mod (which holds the events) along with the MTE and the CCP.FTL holding the list of event sit should load. I can click the blue option to give a custom event, but clicking it gives me just the options to blow up my ship. I'm sure this is an error on my end, but do you have any idea on what it could be?
Amateur modder and Let's player (with a substantial FTL and ItB LP featuring countless mods).
Channel link
A list of all my mods can be found here.
User avatar
TaxiService
Posts: 204
Joined: Mon Dec 23, 2013 6:04 pm

Re: Mod Testing Environment (1.2) (AE Compatible)

Postby TaxiService » Sat May 02, 2015 12:27 pm

Hello! I'm glad this mod could help you. ◡‿◡

If you send me your .ftl or .zip files i can check it out, in the meantime i can tell you how it's supposed to work.

This is the event you get at each beacon from MTE, followed by the placeholder EVENTLOADER event:

Code: Select all

<event name="TESTBED_WHATDO">
   <text>What would you like to do next?</text>
   <modifyPursuit amount="-2"/>
   <choice hidden="true">
      <text>Fight a ship or boarders. </text>
      <event load="TESTBED_CHOOSE_ENVIRONMENT"/>
   </choice>
   <choice hidden="true">
      <text>Open the store menu.</text>
      <event>
         <store/>
      </event>
   </choice>
   <choice hidden="true">
      <text>Get some resources or items.</text>
      <event load="TESTBED_GET_RESOURCES"/>
   </choice>
   <choice hidden="true" name="TB_CCP_EVENT">
      <text>Load a custom event. (Custom Content Patch needed.)</text>
      <event load="TESTBED_EVENTLOADER"/>
   </choice>
   <choice hidden="true">
      <text>Wreck my ship.</text>
      <event load="TESTBED_DEATHWISH_CONFIRM"/>
   </choice>
   <choice hidden="true">
      <text>Nothing.</text>
      <event/>
   </choice>
</event>

<event name="TESTBED_EVENTLOADER">
   <text>This option lets you load specific or custom events if used in conjunction with the Custom Content Patch. Check the original thread for more information.</text>
   <item_modify>
      <item type="fuel" min="-1000000" max="-1000000"/>
   </item_modify>
</event>


Without the CCP, TESTBED_EVENTLOADER requires 1000000 fuel to be able to be selected.

The CCP simply appends an updated TESTBED_EVENTLOADER event with actual options to the events.xml file.
(it also changes the option to blue, and removes the "requires ccp" texts)

Code: Select all

<event name="TESTBED_EVENTLOADER">
   <text>What event do you want to load?</text>
   <choice>
      <text>Slot 1.</text>
      <event load="EMPTYSLOT"/> <!-- THIS REPLACES SLOT 1 -->
   </choice>
   <choice>
      <text>Slot 2.</text>
      <event load="EMPTYSLOT"/> <!-- THIS REPLACES SLOT 2 -->
   </choice>
   <choice>
      <text>Slot 3.</text>
      <event load="EMPTYSLOT"/> <!-- THIS REPLACES SLOT 3 -->
   </choice>
   <choice>
      <text>Slot 4.</text>
      <event load="EMPTYSLOT"/> <!-- THIS REPLACES SLOT 4 -->
   </choice>
   <choice>
      <text>Slot 5.</text>
      <event load="EMPTYSLOT"/> <!-- THIS REPLACES SLOT 5 -->
   </choice>
   <choice>
      <text>Slot 6.</text>
      <event load="EMPTYSLOT"/> <!-- THIS REPLACES SLOT 6 -->
   </choice>
</event>

<mod:findName name="TESTBED_WHATDO">
   <mod:findName type="choice" name="TB_CCP_EVENT">
      <mod:setAttributes req="pilot" lvl="1"/>
      <mod-overwrite:text>Load a custom event.</mod-overwrite:text>
   </mod:findName>
</mod:findName>


I guess that somehow "TESTBED_EVENTLOADER" got replaced with something else at some point.
You could try redownloading both files and try again, maybe? But send me the stuff in any case so i can take a look. ; )


Also i guess it's useless to say i've been trying to work on an updated version for this, but i am having trouble with:
A) ships. I don't know how to choose how difficult/easy each one should be
B) too many options. The more paths you add for the user, the more time it takes to load the mod! In some versions, whenever i clicked the start button, it would take up to 10 minutes for the game to start!! I've since disabled some trees, but geez!!
ImageImageImageImageImage
User avatar
Biohazard063
Posts: 412
Joined: Fri Feb 14, 2014 4:38 pm

Re: Mod Testing Environment (1.2) (AE Compatible)

Postby Biohazard063 » Sat May 02, 2015 4:22 pm

Could be that I'm just missing some stuff...
I just opened the events.xml of the MTE CCP and made it the following :

Code: Select all

<!-- - - - - - - HOW TO LOAD CUSTOM EVENTS - - - - - - - - -
|                                                           |
|  Choose a slot and replace the event name EMPTYSLOT with  |
|  your event name. Make sure to include it within quotes!  |
|                                                           |
|  Like this:                                               |
|      <event load="YOUR_EVENT_NAME_HERE"/>                 |
|                                                           |
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->

<event name="TESTBED_EVENTLOADER">
   <text>What event do you want to load?</text>
   <choice>
      <text>Slot 1.</text>
      <event load="DISTRESS_STATION_DISEASE"/> <!-- THIS REPLACES SLOT 1 -->
   </choice>
   <choice>
      <text>Slot 2.</text>
      <event load="REBEL_VS_FEDERATION"/> <!-- THIS REPLACES SLOT 2 -->
   </choice>
   <choice>
      <text>Slot 3.</text>
      <event load="STRANDED"/> <!-- THIS REPLACES SLOT 3 -->
   </choice>
   <choice>
      <text>Slot 4.</text>
      <event load="MANTIS_NAMED_THIEF_DEFEAT"/> <!-- THIS REPLACES SLOT 4 -->
   </choice>
   <choice>
      <text>Slot 5.</text>
      <event load="BATTLEFIELD_SURVIVOR"/> <!-- THIS REPLACES SLOT 5 -->
   </choice>
   <choice>
      <text>Slot 6.</text>
      <event load="EMPTYSLOT"/> <!-- THIS REPLACES SLOT 6 -->
   </choice>
</event>


Zipped the data and mod-appendix folder and made it a .ftl.
Got the following mod order :
MTE
The CCP .ftl file I created
The ship mod containing the modded events

Either way, here are both the ship file and files I created in CCP :
Ship : https://www.dropbox.com/s/6p8d62w6eua7r5j/V3.ftl?dl=0
CCP : https://www.dropbox.com/s/7dtu5lqn3ile3 ... P.ftl?dl=0

Again, probably something I messed up... wouldn't be the first time.
Amateur modder and Let's player (with a substantial FTL and ItB LP featuring countless mods).
Channel link
A list of all my mods can be found here.