Author Topic: error installing >256 kits  (Read 13789 times)

Offline subtledoctor

  • Planewalker
  • *****
  • Posts: 113
error installing >256 kits
« on: June 28, 2019, 01:43:57 PM »
I just got this error when trying to install a kitpack on BG2EE:

Code: [Select]
ERROR: Failure("The game requires ToBEx or GemRB to support more than 256 kits.")
I pushed the install above the 256 number on purpose.  I'm trying to test something.  Any idea how I can make Weidu ignore the limit, at least temporarily?

For instance: is there a way to spoof ToBEx detection? Does it look for a marker file, or MOD_IS_INSTALLED, or something?

Even better: could I INCLUDE my own alternate ADD_KIT that omits this restriction?
« Last Edit: June 28, 2019, 05:56:47 PM by subtledoctor »

Offline Wisp

  • Moderator
  • Planewalker
  • *****
  • Posts: 1071
Re: error installing >256 kits
« Reply #1 on: June 29, 2019, 04:32:16 AM »
The EE engine supports more kits these days, then? Last I worked on this it apparently did not.

You might be able to spoof ToBEx by creating the file tobex_ini/tobexver.txt with the contents 20 (or a greater number).

Offline subtledoctor

  • Planewalker
  • *****
  • Posts: 113
Re: error installing >256 kits
« Reply #2 on: June 29, 2019, 09:48:01 AM »
The EE engine may support unlimited kits - as long as the ones beyond row #256 in kitlist.2da don't call for the engine to read their CLAB tables. 

Conveniently, I am working on several mods that introduce multiclass kits, which do not require the engine to read their CLAB tables.  I want to investigate whether I can back-load these types of kits.  That would allow up to 256 regular kits, and a functionally unlimited number of kits past that.  Especially in cases such as, for instance, you want to make a "Priest of God X" kit, and want it to effectively be available to any/all multiclass cleric combinations.  Currently, the 5 kits required to do that all count toward the 256 limit.  In a mod designed to add lots of deities and several multiclass combinations for each deity, reducing the 'footprint' by up to 80% would give us a LOT more breathing room...

Offline subtledoctor

  • Planewalker
  • *****
  • Posts: 113
Re: error installing >256 kits
« Reply #3 on: July 02, 2019, 01:10:23 PM »
You might be able to spoof ToBEx by creating the file tobex_ini/tobexver.txt with the contents 20 (or a greater number).

No go, it fails on the 257th kit with:
Code: [Select]
ERROR: Failure("int_of_string")

Offline subtledoctor

  • Planewalker
  • *****
  • Posts: 113
Re: error installing >256 kits
« Reply #4 on: July 11, 2019, 07:40:29 PM »
Gonna bump this, I'm not sure what to do. If my hypothesis is correct, then Weidu's ADD_KIT should be modified to proceed normally on kits numbered 257+ if those kits are added for class #s 7, 8, 9, 10, 13, 14, 15, 16, 17, or 18. (For the EE games, which are the only time someone will add multiclass kits.)

I just can't test the hypothesis in order to confirm it and formally request the change. (But I'm fairly confident in it - it stems from information from Kjeron...)

Offline Wisp

  • Moderator
  • Planewalker
  • *****
  • Posts: 1071
Re: error installing >256 kits
« Reply #5 on: July 17, 2019, 02:35:37 PM »
You might be able to spoof ToBEx by creating the file tobex_ini/tobexver.txt with the contents 20 (or a greater number).

No go, it fails on the 257th kit with:
Code: [Select]
ERROR: Failure("int_of_string")
The code reading the file is quite fragile. Likely it's failing on whitespace or something. You can copy the file from the ToBEx distribution available from SHS.

Offline subtledoctor

  • Planewalker
  • *****
  • Posts: 113
Re: error installing >256 kits
« Reply #6 on: July 30, 2019, 08:24:33 AM »
Thanks, that worked. And with testing done, I can confirm that multiclass kits installed with the QDmulti function do indeed work fine when they are higher that #256. So, there are several alternative courses of action:

1) Bundle QDmulti, or similar code, with Weidu. Have ADD_KIT do a count of kitlist rows; if it detects the kit to be installed is #257+, then it can use the QDmulti method.

2) Have ADD_KIT do a count of kitlist rows, and only allow kit installation to proceed if its class value indicates a multiclass. (On tbe presumption that the mod will necessarily use QDmulti to install multiclass kits.

3) Don't change Weidu at all; mods installing kits with the expectation that they might go over the 256 limit can use QDmulti and spoof ToBEx detection. (We are only talking about EE games, here, so that should hopefully be harmless... or maybe the kit mod can remove the ToBex identifier file after installing the kits?)
« Last Edit: October 09, 2019, 07:45:17 PM by subtledoctor »

Offline The Imp

  • Planewalker
  • *****
  • Posts: 285
  • Gender: Male
Re: error installing >256 kits
« Reply #7 on: August 02, 2019, 02:02:00 PM »
... that worked. And with testing done, I can confirm
Excuse the giant ignorance staring at your face, and could you just state exactly what you did in .tp2 code... just for the hell of it. Nobody's going to notice.

Offline subtledoctor

  • Planewalker
  • *****
  • Posts: 113
Re: error installing >256 kits
« Reply #8 on: August 03, 2019, 01:52:04 PM »
... that worked. And with testing done, I can confirm
Excuse the giant ignorance staring at your face, and could you just state exactly what you did in .tp2 code... just for the hell of it. Nobody's going to notice.

Nothing. I just installed a bunch of kit mods to get kitlist up to ~240 rows. Then installed my own kitpack with ~40 multiclass kits. Then played one of the kits numbered above 256. They worked fine.

Offline Wisp

  • Moderator
  • Planewalker
  • *****
  • Posts: 1071
Re: error installing >256 kits
« Reply #9 on: August 16, 2019, 01:05:01 PM »
My plan has been to implement the ADD_KIT portion of the process into fl#add_kit_ee, include that by some other name into WeiDU proper and effectively deprecate the ADD_KIT action. The function could then have an option for performing the safety-check or not, but maybe your option 2 is less likely to languish indefinitely.

Offline subtledoctor

  • Planewalker
  • *****
  • Posts: 113
Re: error installing >256 kits
« Reply #10 on: August 26, 2019, 01:22:51 PM »
Up to you. Option 2 would of course be easier for us, but I don't know how much work it would be for you to do the class check. Theoretically, we could add the ToBEx spoof file at the beginning of the mod, and delete it at the end. That would be very little extra work for us, now that I have it working. And has the benefit of being a stable solution that works now and will continue to work until you make the major changes to ADD_KIT. 

 

With Quick-Reply you can write a post when viewing a topic without loading a new page. You can still use bulletin board code and smileys as you would in a normal post.

Name: Email:
Verification:
Type the letters shown in the picture
Listen to the letters / Request another image
Type the letters shown in the picture:
What color is grass?:
What is the seventh word in this sentence?:
What is five minus two (use the full word)?: