Sim Theme Park/Theme Park World Online Functions

Discussion in 'Programming' started by Blayer98, Jul 10, 2015.

  1. zc456

    zc456 Well-Known Member

    So, you're typing with your butt?
  2. LetsRaceBwoi

    LetsRaceBwoi Well-Known Member

    I was :)
  3. slappyhead

    slappyhead New Member

    Hi, sorry to dig up an old thread but as I have been waiting now 15 years to see Theme Park World Online back in action, it is great to see someone finally having a go or at least interested to see the online mode again.... there is so little documentation of it just a few ancient press review screenshots and a bit of video in the old trailers.

    Back in 2004, an anonymous poster of the title 'Splan' replied to a forum post at neoseeker (http://www.neoseeker.com/forums/2159/t224591-theme-park-world-online/#m6417530) regarding the loss of service for the online functions of the game. The poster confirmed that EA had pulled the plug on the game servers but there was a private server with 650 parks online, for which they created a patch to make the game work with the new server (it probably just changed the .sam file with the new url). They asked if anyone would be interested in the details (which many were) but this poster never came back!

    Assuming the poster was likely one of the accredited online programmers who worked on the game, it wasn't too much trouble to find a way to contact them. The most accessible appears to be Ben Deane. I never did contact him myself but do certainly see if he can help you in any way with this project. Possibly he might still even have the files required which would save some work (although I suspect handing over that might be in violation of anything related on the agenda of EA). His website is http://www.elbeno.com which links to his blog or he's on github: https://github.com/elbeno

    The other two programmers were Mark Lampart (now a sound designer?) and Andy Buchanan (now at Relentless Software)

    The other thing is my own childhood memory of the service. You had to register an account at themeparkworld.com (of which I still had my piece of paper with my original login until recently but now appear to have misplaced). In 1999, it took about 30 minutes to get into a single park online on 56k dialup with a windows 98 machine by Tiny computers. Just an hour and a half of play later and the ISP disconnected you which came about with the rise of Napster, Morpheus and WinMX etc at the time... laughable now. That left you going through the whole waiting process again to get back to your 'buddies' from around the world in game.

    There were 5 chat satellites which were essentially independent chat rooms and there was a top 10/50/100? of the best voted parks, I remember the same park (but sadly not the name) staying at no.1 throughout the service. They were also listed at themeparkworld.com

    You could also take screenshot postcards which would be emailed directly from the game to email addresses and then you could submit your own parks to the service and invite buddies directly to them who could walk around the park and ride the rides plus submit votes on the park.

    tpw3.jpg tpw4.jpg tpw5.jpg
    Last edited: Feb 18, 2016
    JWofles, Blayer98 and LetsRaceBwoi like this.
  4. LetsRaceBwoi

    LetsRaceBwoi Well-Known Member

    I had one of those. Still have one or two of the "Tiny compilation pack" CDs, remember the computer fondly since it was built rather badly and cost a fortune.
    I remember it being top 100 for some reason, but I'm probably wrong. There's also a likely reason for the same park staying at no.1 and that reason is because nobody really wants to flick through list after list to view someone else's park, either that or they'd found an exploit in the game which gave them infinite votes.
    Blayer98 likes this.
  5. Blayer98

    Blayer98 Active Member

    Hey, thanks for all this info and screenshots!

    I've put my progress on hold for now, simply because I'd like to focus more on TSO-SE (with Fatbag)
    I will return to this, just only when I'm not caught up in so much stuff right now. :)
    LetsRaceBwoi likes this.
  6. slappyhead

    slappyhead New Member

    Hi again, over the recent bank holiday I found a load of backup discs and had quite a nostalgic trip scouring through them all. The earliest files were from 2001 and incredibly knowing that I did have a habit of backing up save data for my PC games, of course I stumbled upon some for my original TPW installation. Luckily within the online folder there was some data, can't say if it's any use - most of it is zero bytes and shows nothing in a text editor, however if it helps in anyway when you get back to TPW, I will gladly send the folder of files to you.

    Secondly to add to my last bulk of info, using the wayback machine on themeparkworld.com - in regards to the top 10 parks with no.1 always staying in the leading place, the park in question was titled Hade's Revenge.
    Last edited: Mar 31, 2016
    Blayer98 likes this.
  7. slappyhead

    slappyhead New Member

    Some launch options found by 'geekywalrus' in Sim Theme Park version - maybe of use, maybe not:

    Use these by opening a command prompt in the game directory and running this command: tp.exe /LAUNCH COMMAND HERE

    noload - No obvious effect
    SAVEDEBUG - No obvious effect
    quickload - No obvious effect
    version - Causes crash
    flmouse - No obvious effect
    bwcursor - Game cursor is black & white/monochrome


    Finding the quick reference sheet again and feeling stupid for not taking it in all those years ago... what a difference the shortcuts make to the gameplay... a secret feature carried over by default to the PS2 version and then Theme Park Inc - you can unlock the camera and get a much expanded view (Can't remember the key combination with space bar) ... plus completely hide/show the UI with F3
    Last edited: Apr 23, 2016
    Blayer98 likes this.
  8. slappyhead

    slappyhead New Member

    There were some implemented features of the PC game which were ultimately cut before the shipping in 1999.

    From extracting the advisor's dialogue sound files, I learned that it must have been possible originally to slap the advisor to make him silent, with enough slaps automatically turning him off until a manual switch back on was made in the options screen. In the advisor.sam balance file there are references to slaps on the basis of when to repeat messages after being slapped. I wondered if the code for this feature is removed entirely or perhaps it could be reactivated... the nagging ant needs a good slap after all these years!! XD

    I have asked another group who are working to make it easier to run STP out of the box on modern machines about this one with no reply so far.... The park employees originally would call a strike if their happiness level dropped to a low percentage, only referenced in the manual to be achieved by refusing to build a staff room but perhaps originally additionally planned to be effective upon other factors such as pay rates and environment etc. An 'addendum' sheet was also included in the shipped box with a FAQ that corrected the manual explaining that the feature had been cut as it proved to be a confusing/frustrating scenario for the player.

    Testing the PC game, the employees with low energy will eventually zero their average percentage of happiness and refuse to carry out their duties but will only wonder the paths of the park like zombies while the advisor just continues to threaten the probability of a strike. In comparison to the later PS2 port/update, the employees in that version will call a strike and march up to the park gate producing picket signs with dollar marks, which is very buggy and will last a few minutes before they return to the park and do it over again sequentially between the employee role types. The advisor again however is unable to determine that they are on strike and continues to threaten (I looked into that one and found most of Lewis' recorded dialogue for the PC version had been cut for the PS2 version, with new recordings dedicated to the specific tutorial basis for operating the PS2 version and related to the console controller etc). However again interestingly Bullfrog put back in other dialogue which was cut from the PC version, e.g area inaccessible (referenced in the PC advisor.sam balance file by the Bullfrog programmer as an 'EVIL HORRIBLE MESSAGE DIE DIE DIE') - a message which the nagger would announce if you put something on the map but didn't connect a path to it.

    Anyway again whether there is anything within TP.EXE which would reactivate the strikes, I could not find anything specifically telltale within all the SAM balance files although strikes do have mentions and there are 2 lines related to staff happiness percentage/level/points in the levels standard.sam balance file:

    AllStaffConstants.RestLevel 1
    AllStaffConstants.HappyHitCosNoRestArea 2

    Lastly of interest and possibly could have been related to the online mode, did you know that it was intended for Bullfrog to have released not only new rides/shops/sideshows/features (of which only a few ever were online through themeparkworld.com - with them and more packaged into the retail gold edition in the US only), but there was going to be an additional 4 extra new 'worlds' that would have been paid DLC or unlockable with the equivalent of the golden tickets you could earn within the base game, bring the total to 8 worlds in game. It was also planned for release of a ride designer and separate release of Bullfrog's exporting tools for the more advanced players. These intentions were all confirmed as a Molyneux-esque hype-tease by Jeff Gamon, the game's producer, within a press interview around the time of the original PC launch in 1999. None of those plans ever came to fruition.

    However, it appears that the decision was made for these plans to be carried over into a whole new game built upon the same engine. Bullfrog tendered out the game engine to Climax Studios who developed Theme Park Inc (Simcoaster / Theme Park Manager) on EA's behalf, a game with 3 brand new themes (Land of Invention, Polar Ice and Arabian) which lost most of the sandbox freedom but better challenged the player in management of the park to move through a linear set of goals unlocking areas of newly created world/level designs. A separate coaster designer kit application was bundled with the game, again carried over from the original plans for Theme Park World. The game also dumped the previous PDA-esque control pad, providing a more contextual UI and control system but however with it made the gameplay more challenging and largely irritating to keep on top of - particularly putting out endless vandal fires and sending guards to moody old codgers moaning and spreading rumours! Theme Park Inc. was reviewed by the press in 2001 with an overall feeling of it presenting as "an expansion pack" to Theme Park World if it hadn't been for the radical change in gameplay and mechanics passing it off as a new game which is ironic given the original DLC plans.

    The PS2 version of TPW had a total of 8 worlds that you have to unlock through challenges and golden tickets (although they are just duplicates of the existing themes). Looking again at the PC game, the worlds are self contained within a folder titled levels, I tried to duplicate a world folder retitled as 'worldfive' and in the folder within the global.sam balance file, changed the value for:

    ParkName.GateObjectID 1601

    to 5601, the game crashed to desktop on launch... oh well.
    Last edited: Apr 7, 2016
  9. LetsRaceBwoi

    LetsRaceBwoi Well-Known Member

    Have you tried running /version in command prompt? It might print something.
    Blayer98 likes this.
  10. Blayer98

    Blayer98 Active Member

    Thanks so much for all this information! :)
  11. slappyhead

    slappyhead New Member

    Just reinstalled Theme Park Inc. (Simcoaster / Theme Park Manager), forgotten it had online functions as well using the same server. However this time round it was only for sending in game postcards to email contacts.

    Delving into the game files on the other hand provides some further interest, rather hoped some of its active and referenced features could be brought back over to Theme Park World but it wasn't as simple as copy and pasting the balance code over! Looks like the staff on strike feature really was cut, in TPI they expanded it with staff also demanding pay rises. Also the game introduced adults and senior citizens as well as the kids and of course gardeners to the staff roles. A lot of redundant code in there though simply left from TPW - some deactivated with a hash plus again more very humorous antidotes from the developers left in as well.

    Interesting that they couldn't decide on the themes/worlds with a number of references to alternatives
    Last edited: Apr 23, 2016
    Blayer98 likes this.
  12. slappyhead

    slappyhead New Member

    With /version the game crashed to desktop - with /SAVEDEBUG the game run a little slower but nothing was printed in command prompt or logged within the game files - nothing new in the debug folder either

    Incidentally on the Theme Park World Online top 10 parks - reading the included readme in patched version 2.0 of the game which came out in early 2000, the service was not only moved to a new server (the daphne.eagames.co.uk) but the client changed to prevent a user for voting for their own park and also a limit on number of votes per day that a user could make - also an additional abuse reporting feature. So I guess it was true that the owner of no.1 park "Hades Revenge" probably cheated.... In the game manual Bullfrog said that there were going to be prizes and rewards for the top 10 parks, doubt it ever happened, also as mentioned already you would have got special golden tickets to unlock new downloadable rides if your park got enough votes - don't think that happened either, EA US just packaged some new additions in a retail gold edition and washed their hands of the game and then Bullfrog.
    Last edited: Apr 23, 2016
    Blayer98 and LetsRaceBwoi like this.
  13. Blayer98

    Blayer98 Active Member

    Ok, I've got back Theme Park World, And I'm ready to share screenshots about how the game processes the login information you send. (Please note, These screenshots are taken from a recording I did last year, so sorry if they are blurry!)
    EDIT: Ok, I can't submit screenshots right now, forums bugging out, but I still have the video on my dropbox. (You will get a better quality if you download it.)
    https://www.dropbox.com/home?preview=How the LoginServer works on Theme Park World.mp4
  14. Blayer98

    Blayer98 Active Member

    I've also noticed that if you specify a port that the game can't connect to with localhost, the game will lag, and then crash.
    EDIT: This is because the connection is being refused and the game has no idea what to do with that type of response.
    Last edited: Apr 14, 2016
  15. Blayer98

    Blayer98 Active Member

    Ok, so I put a breakpoint on "Authorisation Ok" and it never gets trigged, although the game is connected to localhost and attempts to log in.
    upload_2016-4-14_11-39-55.png

    So, with another address (in this case, niotso.org) The game is about to connect to it.

    upload_2016-4-14_11-45-43.png

    Here, the commsThread has started...

    upload_2016-4-14_11-47-5.png

    Now here is where it differs from localhost. The game then puts out WSAENOTSOCK...
    upload_2016-4-14_11-48-46.png

    then the commsThread ends...
    upload_2016-4-14_11-50-4.png

    upload_2016-4-14_11-50-50.png
    and then FINALLY connects to niotso.org and attempts to log in, however, no other breakpoints trigger, including the Timeout = 0 message, which localhost triggers after attempting to log in, and then the client is disconnected by the server.
    Last edited: Apr 14, 2016
  16. Blayer98

    Blayer98 Active Member

    The game also stores the address in memory:
    upload_2016-4-14_12-0-1.png
    Which can be edited, and the game will use that address the next time you attempt to go online.
  17. Blayer98

    Blayer98 Active Member

    With localhost, the game does not go to WSAENOTSOCK, instead, it connects, attempts to log in, and then goes to a Timeout pointer with a value of 0.
    upload_2016-4-14_12-2-59.png
    Attempting to go past the breakpoint will trigger the same breakpoint again, after the third try, it'll then go to commsThread Ended, and then the client will be disconnected from the server, HOWEVER, since I have changed niotso.org to localhost, and I'm still running the program, the game then goes back to the same Timeout = 0 breakpoint, and THEN disconnects, and then also ends the commsThread.
    upload_2016-4-14_12-5-37.png
    Then this error will show up like normal.
    upload_2016-4-14_12-7-14.png

    Intrestingly, it will go to WSAENOTSOCK if localhost is offline, however, since the localhost refuses connections now that it's offline, the game will then have an access violation at 0x00000000 and crash.

    upload_2016-4-14_12-11-38.png
    you can only get so far when passing an exception.
    the game will then be unable to proceed further.
    upload_2016-4-14_12-12-39.png
    Last edited: Apr 14, 2016
  18. LetsRaceBwoi

    LetsRaceBwoi Well-Known Member

    Do you know any tutorials involving reverse-engineering like you're doing here? I want to help :p
    Blayer98 likes this.
  19. Blayer98

    Blayer98 Active Member

    I don't really know apart from watching Fatbag... :p
    LetsRaceBwoi likes this.
  20. LetsRaceBwoi

    LetsRaceBwoi Well-Known Member

    Alright, guess I'll have to do some searching around. Thanks though :)
    Blayer98 likes this.

Share This Page