-
Notifications
You must be signed in to change notification settings - Fork 0
SWBF2 XBOX Development FAQ
BAD-AL edited this page Sep 4, 2023
·
3 revisions
You can run/test SWBF2 mods on either modded XBOX 360, modded Original XBOX hardware or the XEMU emulator.
XBOX specific Porting tutorials can be found on this page
- RGH XBOX 360 systems don't always start up quickly due to the nature of how the RGH works.
- Older (Phat) RGH 360 models tend to have very loud fan noise, you'll probably be happier with a slim Xbox 360.
For this it depends on which part of development you are doing.
- If you're trying to debug a loadscreen hang/crash then OG XBOX hardware is easier because XBOX 360 RGH systems do not restart as quickly.
- If you are just tweaking some things then it can be easier to develop against RGH 360 using a USB stick (because you don't need to recycle console power to apply your changes; simply press the Xbox button to return to the 360 dash, remove USB drive, place new files, re-insert USB drive, re-load game through xexmenu).
- XEMU is easier to develop against when creating an entirely new ISO (you can use extract-xiso to create the image); but you can also develop an installer if you FTP the files to the XEMU HDD.
- You can also boot an image with XEMU and FTP stuff to the HDD like in this video.
This can be tough, here are some tips:
- If the mission lua isn't in the mission.lvl file then you will see an immediate crash.
- Logic also states that the longer the loadscreen is up, the further it gets.
- You can try showing a custom load screen at different parts of your script; this isn't foolproof, but it can help narrow things down.
Loadscreen hangs often occur due to running out of memory. Try the following:
- Check your world lvl size against this list, try to get your map lvl size in the appropriate range for XBOX.
- Reduce texture sizes. Max size texture on XBOX should typically be 512x512, you may want to make an exception in certain circumstances. In practice, 256x256 is fine.
- Use the memory pool tuning technique here
- Reduce Model memory. Either by modifying the models or by removing them from your map.
- Reduce size/complexity of your terrain by flattening out parts the player is unlikely to see.
- Load fewer units and vehicles to see if you can get your mod to load.
- Reduce Unit count (when calling
SetupTeams()
)
You will often see the 'Disc is Dirty or Damaged' error message appear when developing mods targeting XBOX. Usually this occurs when calling ReadDataFile()
on a file that isn't present or with a .lvl file that doesn't contain the named asset or something associated with that asset. Use the loadscreen tip from above to narrow down the crash.