Ok, how do I use NICE, I literally know nothing about dll's or C++ though I am pretty decent at x86 and I want to make this the next step.
Could a simple tutorial be written out for this?
Sorry if I'm asking for something that's very situational....
@duncathan Yes, I love how it's only growing better even though it's small; Maybe if we can make NICE the standard of CS modding then we can draw in more member that will stick around kinda like the Sonic and mario ROM hacking communities because if it's great flexibility.
(EDIT: The below assumes you are using the latest version of NICE, that is, the version with audio.)
Depends what you're going to do. If you want to just modify entities & make TSC commands, you'll want to work in Lua. If you want access to Windows API stuff, or something I've missed in the Lua layer, you work in C++. If you want to add hooks, you have to do a bit of ASM to hook it, then some C++ to connect your hook to Lua.
For "My little entity":
The first bit is complex. There's some procedures you have to follow when using Cave Editor, and I'm not sure how BL reacts.
If you're using Booster's Lab, it might work better. Backup the EXE, do ASM modifications, try using Booster's Lab on the ASM-modified EXE, and please note your results so everybody knows Booster's Lab works.
If you're using Cave Editor, Cave Editor will *NOT* work properly with NICE-modded EXEs. I have no idea why.
I suspect this has something to do with why Cave Editor and Sue's Workshop are like matter and anti-matter.
So, keep a backup of the EXE, and use Cave Editor on that backup. Doukutsu Assembler has ASM-lists for a reason, use them to apply the NICE-patches to your EXE before testing (so you can test w/ NICE running)
2. If you're using the template mod, things are now easy. Follow the above procedures, do Lua work in data/nice.lua, and do C/C++ work in game_dll. (Visual Studio C++ 2010 express project)
3. Otherwise, you have to copy over at least the extra DLLs, data/init.lua, and data/nice.lua. And if you want C/C++ work, you'll want to copy the game_dll sources.
And you'll also want to copy the licenses for the DLLs, too
4. Add your entity to data/nice.lua. An example of NPC216 (safely deletable, the kludge used in older NICE versions is gone now)
Sorry setup is complicated, but at the end things become a lot simpler (at least if you're working in Lua, anyway!)