The source code

Started by tirpider, June 29, 2013, 09:34:42 PM

Previous topic - Next topic
June 29, 2013, 09:34:42 PM Last Edit: July 20, 2013, 06:05:18 PM by tirpider
I'm sure you noticed the link to the source in the announcement thread.

I want it out there for a couple of reasons.
If anyone wants to know how to do all this, well, there it is.
And if anyone is a better programmer than me (which is very likely) then I need your help.

The source is pretty easy to handle and build.  It uses AutoIT 3.3.8.1 and makes use of features in the SciTE IDE designed for AutoIT.

The build tools can be found here:
http://www.autoitscript.com/site/autoit/downloads/
And mirrors of the exact versions I use are on my dropbox, here:
autoit-v3-setup.exe v3.3.8.1
SciTE4AutoIt3.exe v2.28
(I mirrored the tools in case one of their updates breaks my code.)

And the best place for anything AutoIT related would be their forums, where the developers are also the moderators and staff. It's an active and useful place. Full of helpful advice, user defined libraries, and feedback.
AutoIT Forums


The source file itself has a .au3 extension and is a simple txt file, but I recommend using the SciTE ide because it has some navigation features that make looking at the 13000 line beast manageable. (It's also got Lua support, but for Lua 5 not 4.1 like SWBF uses.)


How to Build SchMEe:
- Both AutoIT and SciTE need to be installed to mimic my build environment.

- After un-rar-ing the src archive, open the SchMEe.au3 and select Tools>Compile then press compile script.

- It will make a _build folder and place the resulting exe's (32 and 64 bit) in there.

- Done.

It does not currently use any external libraries, but that may change in the future.  So far, all the 3rd party stuff it uses is embedded in the source itself (it should be commented).

There are some more notes in the archive, full of mad ravings about arrays and globals that may help you parse how the program is structured. 



Regarding Licences and whatnot:

I don't currently have a licence to cover this, so it's safe to say its open, but, I do make use of other folks snippets and functions, so know that as I wrangle together the accreditation info I may end up having to put a licence together for it.

Ultimately, this program is a derivative work of Pandemics models, as they are what I studied to write it. So actual ownership of the code will probably go to LA, or Pandemic, or some big name that's bought all rights to everything.

I'm ok with that. The goal is to use it to modify MSH files for use with SWBF and it's modtools. Everything else is lawyer stuff that has nothing to do with it.

If LA shows up and says "stop" or they come and seize control of it, then that's how it goes. But I don't think that will happen.  No one is going to make money on a hacky mod utility for an ancient game, and no one is denying their ownership, so I don't think they will care.

That's cool schmee is open source. I don't program much so I probably won't have anything more than ideas/feedback/testing to contribute to the project. But thanks for sharing it with us, I'll probably look around the source files, sometimes I get mod ideas from looking at code I don't even understand.

As long as schmee is never released publicly, you retain full ownership of it. I don't know what changes once its public domain, but its safe to say Disney or LucasArts will most likely never notice, or care about schmee, unless it evolves into something that supports model file editing for multiple star wars games.

I'm glad you put this much work into something you have a lot of talent for. It really helps the community a lot so thanks.

Quote from: Phobos on June 29, 2013, 09:39:11 PMThat's cool schmee is open source. I don't program much so I probably won't have anything more than ideas/feedback/testing to contribute to the project. But thanks for sharing it with us, I'll probably look around the source files, sometimes I get mod ideas from looking at code I don't even understand.
If it can inspire you, then I hope it inspires you to do better. :P It's messy, but there is some good stuff in it as well.  I'm particularly proud of how most the globals are set up with get/set functions. Effectively killing the problems associated with using globals heavily.

Quote from: Phobos on June 29, 2013, 09:39:11 PMAs long as schmee is never released publicly, you retain full ownership of it. I don't know what changes once its public domain, but its safe to say Disney or LucasArts will most likely never notice, or care about schmee, unless it evolves into something that supports model file editing for multiple star wars games.
If anything, the hammer would come down in the form of a cease and desist if one of the owners decided to consolidate all their SW toys for exclusivity sake.  I've never heard of that happening though, ever.  EA is evil (in some ways) but not that evil.

Quote from: Phobos on June 29, 2013, 09:39:11 PMI'm glad you put this much work into something you have a lot of talent for. It really helps the community a lot so thanks.
It's a challenge.  I started programming young (around 12) but life moved in such a way that I never really became good at it.  Every line of code is seriously a forcible act of will -vs- uncertainty.  It takes me longer than most to grok this stuff, but I feel that I am more tenacious than most.  So in the end, this program is a thing, and it won't go away.

Once that's established, it's just a matter of doing it one little tedious step at a time. 11 (relatively) stable builds in 4 months or so. That's not bad for a task that hasn't been approached in 6 years.  It may be another 6 before it's ready to be put on my resume though.