8,452
edits
Paradox-01 (talk | contribs) m (i'm back, sorta) |
Paradox-01 (talk | contribs) mNo edit summary |
||
Line 20: | Line 20: | ||
* [http://mods.oni2.net/node/210 OBJ + OFGA exporter] for Oni | * [http://mods.oni2.net/node/210 OBJ + OFGA exporter] for Oni | ||
** might need the regular OBJ exporter to be installed first | ** might need the regular OBJ exporter to be installed first | ||
* [http://mods.oni2.net/node/210 adjusting existing fw throws] [http://www.youtube.com/watch?v=Zcbv7y5HvRI (instructions)] | |||
* ''put more links here'' | * ''put more links here'' | ||
Line 141: | Line 142: | ||
'''some basics of VBScript''' | '''some basics of VBScript''' | ||
* In VBS you declare variables only as a variant e.g. "dim PolygonCount". Mod Tool decides what type it becomes when it uses the variable the first time. | * In VBS you declare variables only as a variant e.g. "dim PolygonCount". Mod Tool decides what type it becomes when it uses the variable the first time. | ||
* The commands are not case-sensitive, e.g. you can write | * You can put "option explicit" at the start of your script. Then you will be forced to declare all variables with "dim". That looks quite unnecessary but help to find mistakes for example if you mistyped a variable somewhere in a long script. | ||
* The commands are not case-sensitive, e.g. you can write "LogMessage" or "logmessage". | |||
* Some common vbs functions can be found [http://www.w3schools.com/vbscript/vbscript_ref_functions.asp HERE.] | * Some common vbs functions can be found [http://www.w3schools.com/vbscript/vbscript_ref_functions.asp HERE.] | ||
Line 158: | Line 161: | ||
'''some VBS commands that might be interesting for Oni related stuff''' | '''some VBS commands that might be interesting for Oni related stuff''' | ||
Everywhere "logmessage" stands you can replace it with a variable (in that case don't forget the = sign.) | |||
{| class="wikitable" width="100%" | {| class="wikitable" width="100%" | ||
Line 246: | Line 251: | ||
====code pieces (VB Script)==== | ====code pieces (VB Script)==== | ||
Remember that you can use the search function of your web browser. | Remember that you can use the search function of your web browser. | ||
If you see absolute paths adapt them so that the code works on your system too. | |||
{| class="wikitable" width="100%" | {| class="wikitable" width="100%" | ||
Line 275: | Line 282: | ||
| [20] call CMD, e.g. to use onisplit | | [20] call CMD, e.g. to use onisplit | ||
| [21] building forms in ModTool | | [21] building forms in ModTool | ||
|- | |||
| [22] UserDataBlob | |||
| [23] | |||
| [24] | |||
|} | |} | ||
Line 510: | Line 521: | ||
Set objFSO = CreateObject("Scripting.FileSystemObject") | Set objFSO = CreateObject("Scripting.FileSystemObject") | ||
logmessage objFSO.GetFileVersion("F:\Program Files (x86)\Oni\Edition\install\onisplit.exe") | logmessage objFSO.GetFileVersion("F:\Program Files (x86)\Oni\Edition\install\onisplit.exe") | ||
Line 517: | Line 527: | ||
' '''[20] call CMD, e.g. to | ' '''[20] call CMD, e.g. to lunch onisplit or the game''' | ||
' relative path | ' relative path | ||
' the GameDataFolder isn't inside the "install" folder | ' the GameDataFolder isn't inside the "install" folder | ||
' so we will use ..\ to go one folder backwards | ' so we will use ..\ to go one folder backwards | ||
' | ' | ||
' additional quote signs tells the program where the | ' additional quote signs tells the program where the | ||
' paths strings start and end | ' paths strings start and end in case the path contains spaces | ||
onisplit_location = "F:\Program Files (x86)\Oni\Edition\install" | |||
input_folder = """..\GameDataFolder\level19_Final\ONLVcompound.oni""" | input_folder = """..\GameDataFolder\level19_Final\ONLVcompound.oni""" | ||
output_folder = """..\GameDataFolder""" | output_folder = """..\GameDataFolder""" | ||
onisplit_action = "cmd /C start OniSplit.exe -extract:xml " & output_folder & " " & input_folder | onisplit_action = "cmd /C start OniSplit.exe -extract:xml " & output_folder & " " & input_folder | ||
XSIUtils.LaunchProcess onisplit_action, | logmessage "relative path: " & onisplit_action | ||
logmessage " | ' expected logmessage: | ||
' INFO : relative path: cmd /C start OniSplit.exe -extract:xml "..\GameDataFolder" "..\GameDataFolder\level19_Final\ONLVcompound.oni" | |||
XSIUtils.LaunchProcess onisplit_action, 1, onisplit_location | |||
' absolute path | |||
'adapt paths so it works on your computer | |||
onisplit_location = "F:\Program Files (x86)\Oni\Edition\install" | |||
input_folder = """F:\Program Files (x86)\Oni\Edition\GameDataFolder\level19_Final\ONLVcompound.oni""" | |||
output_folder = """F:\Program Files (x86)\Oni\Edition\GameDataFolder""" | |||
onisplit_action = "cmd /C start OniSplit.exe -extract:xml " & output_folder & " " & input_folder | |||
logmessage "absolute paths: " & onisplit_action | |||
' expected logmessage: | |||
' <small>INFO : absolute paths: cmd /C start OniSplit.exe -extract:xml "F:\Program Files (x86)\Oni\Edition\GameDataFolder" "F:\Program Files (x86)\Oni\Edition\GameDataFolder\level19_Final\ONLVcompound.oni"</small> | |||
XSIUtils.LaunchProcess onisplit_action, 1, onisplit_location | |||
' | ' you can also lunch bat files | ||
XSIUtils.LaunchProcess | onibat = "cmd /C start run_wind.bat" | ||
onilocation = "F:\Program Files (x86)\Oni\Edition" | |||
XSIUtils.LaunchProcess onibat, 0, onilocation | |||
' '''[21] building a form''' | |||
' '''[22] UserDataBlob''' | |||
' you can attach data to objects, e.g. properties of Trigger Volumes | |||
' the so-called "UserDataBlob" can't be saved in *.dae, so save the whole scene to keep your progress | |||
' [...] | |||
Line 565: | Line 586: | ||
* making loops from parts of animations | * making loops from parts of animations | ||
* copying animation data from one character to another | * copying animation data from one character to another | ||
* creating new door animations | |||
=====trigger volumes export/import===== | |||
{| border=0 cellpadding=0 align=right | |||
| exported warehouse TVs<br>[http://i305.photobucket.com/albums/nn207/unknownfuture/Oni_Galore_Images/3D_modding/TRGV_Oni_to_ModTool.png http://i305.photobucket.com/albums/nn207/unknownfuture/Oni_Galore_Images/3D_modding/TRGV_Oni_to_ModTool_tn.png] | |||
|} | |||
* Oni to ModTool (export) [wip] | |||
* ModTool to Oni (import) [-] | |||
I've to rewrite the export so that it is compatible with adding new TVs. With current export method the problem is that it calls too often an selection event which cannot be prevented. The selection event is meant to call an form where the user can modify the TV properties. | |||
=====new door animations===== | |||
creating new door animations | |||
After a few experiments onisplit v0.9.54.0 seems to output XYZ-W instead of XYZW. | After a few experiments onisplit v0.9.54.0 seems to output XYZ-W instead of XYZW. | ||
Line 585: | Line 621: | ||
It wasn't tested yet and will probably need some tweaks to meet Oni's door orientation. Also, OBAN flag "ZAxisUp" needs some more investigation. | It wasn't tested yet and will probably need some tweaks to meet Oni's door orientation. Also, OBAN flag "ZAxisUp" needs some more investigation. | ||
[[Category:Windows-only modding tools]] | [[Category:Windows-only modding tools]] |
edits