I’m currently working on the most awesome skin for plasma, full AJAX (well more AJAS, because it uses SOFU) usage, window management, drag&drop for items and a lot more. Can also be found in the Subversion trunk, the skin is called PlasmaOS.
I coded the Plasma Forums in 4 days, 3 hours a day, that’s got to be a record, I also included: Skins, a News system, a better transfer screen and a lot of other stuff, its currently running under http://aurora.dbb.at/plasma.
Also new is the register feature. Well its needed if you want to create a new account. Although Hotmail seems to be blocking my emails send to them, probably a spam filter or something. You even can now claim accounts under my accounts. Its works quite easy, you simply select a character to claim as yours and then you log into Freelancer with that character and you will get a password send to you. Just enter this on the claim-page and the whole account (5 characters) are yours. It work like that on the first try, I never had to do bugfixing for it … and no admin is needed.
Forums features now include:
Plasma-based right managment, you can for example say this Forum (Subforum) can be moderated by the Clanleader of a specific clan. and the clan can decide on its own who can moderate. Same goes for other permission, like “Admin” for Server Rules or similar sections or just plain old “USER” or “” permission where only users or everyone can post. You can set permissions for read, post and moderate
Moderators can move, split and merge threads with about 3 clicks.
It has not all the real features of a phpBB or similar: You can’t upload files, it only supports Signatures, Avatars and Custom Titles (No ICQ and Home and Phonenumbers, but I don’t need that anyway)
Complete backtracking of all the changes made (as a moderator) to a post.
Completly skinable using the Plasma skin sytems. (I already had that one, so why not use it).
All the other common Forum features: Unread posts, Sticky, Closed Thread, Quotes and Editable posts
Thanks to this you can now move view maps that leave the ecliptic like Guanaga Proxy in Freelancer Evolutions. This makes understanding such systems a lot easier, since the top-down view is not much help at all.
I think I’m losing it, but who cares. (Not me)
Addition: I can implemented much nicer looks now by mapping the z-coordinate to the z-index property of CSS.
While I was still trying to replace IONCROSS with Plasma, I figured: why not replace Datastorm as well?
On my machine Datastorm takes around 10 Minutes to read all the information on systems, items, markets, bases and ships into its database and shows it. Plasma reads the same (including also the .cmp files for the ships to get all possible hardpoints for a model) in around 3 seconds.
Next thing to do was to build a nice output into the website and this is what came out of it (after a long fight between me and Cascading Style Sheets):
All images rendered in Minefield (Firefox 3.0 beta), because in Firefox 2, Opera or Internet Explorer the grafics look kind of pixelated. Thats because I can’t use transparent PNGs in IE. I have to use GIFs and downscale them and only Minefield can scale transparent GIFs bicubic which looks a lot better.
Plasma, the alternative Freelancer Server Manger (alternative to IONCROSS) of course, is soon finished.
It keeps the server alive, saves all the playerfiles into a database (MySQL) and reads commands from it.
By accessing the database many things can be scripted, like changing equibment, reputation and money. Save ship changes (without screwing all the hardpoints) will also be included. One goal is for example to let people buy/sell things on a webfrontend, so shops can go around the 90 items limitations. Banking and Web-Storage of stuff is also possible. To give a player 2 station torpedos and take 300 Millions for it the Frontend will put in the plasma-queue the following:
These commands will only be run if all the items, money, rep (-) could be removed, otherwise the file is not saved.
playername, their cargo, rep and money can be found in the database of course, along with some more information. (Usefull for flstat, which should be VERY fast then, just ask the DB).
Plasma-Init collects now all the information for your mod (it even parses TNG without errors), collect all the IONCROSS gamedata information and some more:
good->equipment relations. Goods are not mounted and equipments are, they mostly got the same name, but not allways, so if you unmount an equipment by just moving the HASH to the cargo entry in the savegame-file you will corrupt it or loose the good. Plasma moves gets the real hash for the good and writes that.
hardpoint-list from the shiparch and the model:
If you change the ship in IONCROSS you will most certainly corrupt the file, because there are few ships in the new mods with the same hardpoints. So everything mounted will be mounted to unknown slots. Plasma keeps only the eqiubment mounted on hardpoints of the new ships shiparch entry. The rest is converted to goods. If something has no good (like lights), it will be kept only if the cmp-file has a hardpoint of the same name. Otherwise it is discarded.
Of course parsing all the cmps takes a while, but it has only be done once by plasma-init.