Aller au contenu

Photo

Savegame spelunking and lingua franca (any FoxPro wizards here?)


  • Veuillez vous connecter pour répondre
Aucune réponse à ce sujet

#1
DarthGizka

DarthGizka
  • Members
  • 867 messages
The folks at the DAI Tools board have kindly provided a forum dedicated to research into DAI modding, of which savegame hacking is a tiny sub discipline.

I've been wondering what would be the most suitable language for sharing progress in a manner that facilitates experimentation, as some kind of 'executable hypotheses' or verifiable (because executable) documentation. The sharing of such scripts would also allow more people to chip in and play an active role, by running said scripts on their own savegames to verify - or disprove - the contained hypotheses even if they aren't into programming per se.

In the past the lingua franca for such endeavours was Visual Basic, since pretty much everyone could run that even if they weren't programmers (by running the stuff from Word or Excel or Open Office if necessary), and whipping up simple user interfaces was no problem either. Nowadays things seem a lot more fragmented. Python looks like a good candidate but it's an acquired taste; Lua has a direct bearing on DAI but it is even more bizarre. C# might work to some extent but the development environment is awful; Java seems slightly better but not much.

My personal choice for such things is usual FoxPro (VFP8 or VFP9, as the case may be) since it is simple and packs a lot of punch; FoxPro scripts tend to be similarly clean and compact as Python scripts, compared to the high noise levels in languages like C++, C# and Java. In any case Fox does with ease everything that's cumbersome in C++; having a live interpretative environment with an integrated SQL engine greatly facilitates explorative programming and spelunking.

However, there probably aren't a whole lot of Fox programmers among prospective DAI spelunkers... Hence my question what your thoughts are on the matter.

Using .NET in some fashion would at least have the advantage of wide language choice; for one thing, I could stick with my favourite C++ (just compiling to managed code) whereas other people could use C# or Basic.NET or whatever, and all the code could interoperate just the same.

Anyway, the idea is to cooperate and share on the source code level rather than having to work with closed executables. Let's make a github repo, ready our helmet lamps and abseil into the depths of DAI internals...