TSO-SE Discussion Thread

Sure, a lot of it would have to be rewritten, but that's part of the learning process. Lots of PD's code was also rewritten several times over.
True. It has been rewritten dozens of times. But the framework it was based on remained the same. For xTSO to PD, Xeno would have to learn MonoGame. Unless he wants to maintain the UI for the debugger.
 
Actually, he could use the Win32 drawing calls like he was doing. It just would have been very slow and inefficient use of CPU.
 
Well if he wants to rewrite The Sims right down to it's (unoptimized for modern PCs) performance, more power to him. XD
 
Then just for clarify whats the difference between TSO-se and Niotso?? they have different purposes??
Totaly, TSO-SE : Server Emulator
NIOTSO : New Implantation Of The Sims Online
So for clarify, NIOTSO, create a new engine and TSO-SE crack all the protocol for emule the fonction of the original server.
 
Sure, a lot of it would have to be rewritten, but that's part of the learning process. Lots of PD's code was also rewritten several times over.
If you don't see the problem with jumping into a full commercial game recreation (that many qualified, experienced software engineers built) with no prior experience using a game engine, hell, even making your own game, then there's an understanding problem here. There's a difference between "unfinished" and "unfinishable" - designs can be unsavable, for example no amount of work apart from a total recode of all elements could fix xTSO to be as in depth as it really needs to be.

In our case, we have a few problems where certain things will not be extendable in their current state, but our problems are fixable by simply restructuring a few classes (some areas in VM, eg. offline->network will be a blockade), not changing the whole thing. The UI rendering could probably use some optimisation too, but again, these things are fixable!

xTSO could not support any reasonably interactive user interface even if Xezno tried because of his current programming ability, and the way he has did everything so far. There's a reason we swapped UI engine from LUA to use the real system that TSO uses: it's powerful, flexible and easy to program for (similar to Java Swing), and the original game used it! That's also a thing that, you know, you should probably consider for an engine reimplementation.

@Ianbow, @xezno (if you're reading this) I understand that you guys are young, but remember that some members of the community aren't (but don't know much about how to tell if projects will bear fruit!) and won't understand that you're actually just overenthusiastic about your ability to do these things. It's not great to give people false hope.
 
Lua is actually way more powerful and flexible than TSOs UI scripting language, but the obvious advantage in switching was that it saved us a lot of work.
Anyhow, I don't like belittling or trying to assess the realisticality (is that a word?) of other people's projects. Specifically because Project Dollhouse was deemed implausible, unrealistic, and/or illegal so many times by so many people.
So long as you have code to show for it (Jonathan didn't, except for some out-of-context Assembly), your project is not a lie - it is what it is.
I told Xezno he should have implemented a FARv3 reader or use ours and load the resources that way instead, but he never got that far I think.
 
Lua is actually way more powerful and flexible than TSOs UI scripting language

PD is using all the tso uiscritps for rendering the user interface?? ,what library does use it??
 
Anyhow, I don't like belittling or trying to assess the realisticality (is that a word?) of other people's projects. Specifically because Project Dollhouse was deemed implausible, unrealistic, and/or illegal so many times by so many people.
So long as you have code to show for it (Jonathan didn't, except for some out-of-context Assembly), your project is not a lie - it is what it is.
I told Xezno he should have implemented a FARv3 reader or use ours and load the resources that way instead, but he never got that far I think.
Fair enough.
 
PD is using all the tso uiscritps for rendering the user interface?? ,what library does use it??
We made our own system for this purpose. I wrote my own in HTML5, I'm not sure who wrote the PD version.
 
Ok, what exactly library uses it, just for knowledge, becuase the basic uiscripts seems configure all the user interface layouts...
 
Namespace TSOClient.Code.UI. Specifics generally subclass UIScreen or UIElement (for new elements).

It will be renamed to tso.client.ui eventually.
 
Good news everyone!! I'm happy to confirm that we have CAS on TSO-SE fully functional! (Well, there isn't a DB, so... :p)

The main thing now is that we have a database! :3 I'm absolutely glad that @Fatbag made a packet at the last minute. :)

upload_2015-6-19_16-19-50.png
 
Good news! If anyone owns the Play Test version of TSO and used -NoNetwork, you may have noticed that any Vacant Lot costs $2000, however, Fatbag found the code that makes the price, which is located at (TSODataServiceClientD_base+0xebb6), and the hex code that corresponds to 2000 is D0 07, which I have patched myself to spare anyone having to keep going into OllyDBG and manually changing it, it also lags a bit in OllyDBG for me. Anyway, it's nothing special, as it's in NoNetwork and naming your property locks all the buttons as it sends a packet. (Sort of, we're not sure yet since Fatbag hasn't had a look for the request yet since we're busy looking at the clsids in the game.)

Anyway, for anyone who wants to try it out, here's a .zip file, there's a backup version in case the game doesn't load or has glitches, etc, but I recommend backing up your own dll file. (Which is TSODataServiceClientD.dll)

May I remind everyone that this is strictly for PLAY TEST VERSION OF THE SIMS ONLINE only. Any later versions will not work as New and Improved on wards has dummied out the feature, and Pre-Alpha doesn't display the price.

Here is a screenshot of one of the dialog boxes. (Since I've never seen a screenshot of it, and it seems like the box only pops up for people who've never owned a lot before.)
2irk9jt.png
2irk9jt.png
 
This does appear in the final game, though it has been changed to mention the lot price:

Code:
23 ^Before buying your own property, consider finding existing properties that need roommates. Having roommates allows you to buy more stuff, expand your buildable space, and host more visitors (which makes you money). 

This property costs %s and you have %s in cash. Do you want to buy this property?^
(see _215_matchmakerclosezoom.cst, variants exist which take into account moving from another lot)

Can you go into detail the process the game goes through when buying a lot? Is it just this dialog, or do others precede/follow it?
 
It asks if I want to buy the lot, (I'll show the strings in order.)

^You are about to leave the property you're on. Do you want to continue?^
^Do you really want to buy this property? You have $%d in cash and this lot costs $%d.^
^Before buying your own property, consider finding existing properties that need roommates. Having roommates allows you to buy more stuff, have more buildable space, and host more visitors (which makes you money). Please confirm purchase of lot.^
^Please enter a name for your new property. The name has to be unique and can be later changed in the Property Page.^
After typing in the name, the game locks in the name, and it seems like it's requesting a response. (Since this is NoNetwork, we can't do that unless we patch the game.
 
Back
Top