News:

Herr Otto Partz says you're all nothing but pipsqueaks!

Main Menu
Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - Duplode

#81
Stunts Chat / Race strength estimation
April 01, 2012, 05:34:13 PM
Question: suppose we had a consistent SWR-style metric for estimating pipsqueak strengths at a given instant. In such a case, which would be the best way of deciding if one race was stronger than the other? If you vote for 2 or 3, please also tell what would count as "top" or "midfield".

(The motivation for that is that I'm doing some speculative work on rankings, and want to validate some assumptions. Expect news about that in the next few days...)
#82
Prediction Games / ZCT128 - 2^7
March 04, 2012, 11:06:11 PM
1 Gutix
2 Duplode
3 Alan Rotoi
4 Friker
5 Bonzai Joe
6 CTG
7 dstien
8 Zak McKracken
9 Paradisio
10 AbuRaf70
#83
Stunts Chat / It's all in the mind!
February 24, 2012, 03:12:10 AM
NoRH racing, that is. I claim that after tuning into the correct mindset for a blissful half an hour session in stuntschallenge. (Okay, not so blissful, as my pseudo-IRC GTO times at 1.TRK aren't that great yet. You can probably beat them with just a little effort  ;))
#84
Competition 2011 / ZCT121 - Tabletops
August 15, 2011, 06:10:25 PM
Nice track. Speeds, difficulty level and rhythm are just right for fierce racing  ;)
#85
Competition 2011 / ZCT116 - Kungfu
March 29, 2011, 04:22:00 PM
Well, eight pipsqueaks mean that at the very least this won't be the least populated ZSC scoreboard ever (cf. Z77). Nor will it be the first one without a topic  :)
#86
Stunts Chat / JRPLInfo 0.1
March 08, 2011, 08:05:50 AM
A long time ago (late 2008 actually) I opened a topic in which I speculated about reimplementing RPLInfo with Java and using that to build a replay management system. After some initial experiments I shelved that project until about a year ago, when I found enough free time to try and learn/practice Java a bit more seriously. A functional early version of the program was ready by April last year, but successive distractions meant I never got around to write an adequate README and package it for release... until now, that is.

JRPLInfo is a Java-based reimplementation of RPLInfo with a host of new features, from which I would highlight:

  • A handy graphical interface to browse through .RPL files in a directory without having to use the "Open File..." dialog for opening each file;
  • Support for trackfile matching check as an extra replay validity test;
  • Accounting for penalty time and ZakStunts-style car bonuses through user-supplied text files;
  • An interface for automatically setting up and displaying a scoreboard from replay folders which incorporate all of the features above as well as pipsqueak name recognition through filename patterns (that is, an early implementation of the ReplayHandler concept described in the 2008 topic);
  • Generation of .HIG files from replay folders;
  • Dictionaries of pipsqueak names and car data which can be extended through user-supplied text files. The car dictionaries cover most commonly used cheat cars out-of-the-box.

The basic RPLInfo interface is generally quite simple to use, while the "Race View" scoreboard module is somewhat less polished in that respect. Both modules are described in reasonable detail by the README, and of course you can ask me anything you need to know about them. Regrettably, I forgot to implement track file extraction from replays for this first version (and so my implementation does not fully supersede Luke's yet), but if there is interest it would not be too much trouble to incorporate that (as well as a number of other features you might find useful - I am open to suggestions).

The program is attached to this post - in order to use it extract JRPLInfo.jar and either the Windows or the Linux version of the Run_JRPLInfo shortcut to your Stunts folder. Then (assuming you already have Java installed) run it by launching the shortcut. At the downloads page of Southern Cross there is, in addition to this "executable" version, also a source tarball for curious hackers (hopefully my Java skills became somewhat less laughable after two years and a half  :)). I will be very happy if some of you give it a try (and truly jubilant if anyone actually finds it useful  :D). As always, opinions, suggestions and bug reports are of course more than welcome.
#87
Stunts Chat / General Stunts clips
February 01, 2011, 06:12:24 AM
I liked this one because it goes further than your usual YouTube clips by showcasing TrackBlaster and some of the "modern" custom cars...

http://www.youtube.com/watch?v=thFoYcRXmVY#noexternalembed
#88
Stunts Chat / Copa Stunts
November 02, 2010, 04:33:27 AM
Just to keep you informed of a new development: DarkChaser is having a shot at holding a full-fledged Brazilian Championship. There was little advertisement because he chose to take inscriptions USL-style and make a fixed list of participants. Otherwise, it will be a traditional RH/IRC competition with monthly races. Here are the inscribed pipsqueaks:

Alexandre Ramos ("DarkChaser")
João Gilberto Siqueira ("Vamologocomisso")
Régis Muller ("Régismuller")
Rudah Paiva ("Flash Driver")
Daniel Mlot ("Duplode")
João Paulo Lopes ("Night Rider")
Renato Brodzinski ("Renato Biker")

I bet it will be a most interesting championship, and will keep you informed of any exciting news. You can also follow contest news (in Portuguese) through http://www.copastunts.xpg.com.br/
#89
Stunts Chat / A new milestone for the community
October 03, 2010, 04:21:04 PM
Getting mentioned in an academic paper!! :o

The title of the work is "Time travel and time manipulation in computer games" ("Zeitmanipulation und
Zeitreise in Computerspielen" in the original German -- see this reference), a thesis by Michael Eichler. A PDF copy is attached below. Open it and scroll down to pages 35/36...

Now if only I could time travel to a moment in future in which I can read German properly :)
#90
Stunts Related Programs / StuntsCarSwapper
October 02, 2010, 07:29:59 AM
One month ago I made the following "promise":

Quote from: Duplode on September 02, 2010, 11:49:07 PM
I have not tried the Trueno yet - the creative mood of our designers means I met the 24-car limit, and since I am unwilling to remove any of them I'm going to write a car file swapping app to save some of the trouble.

Well, here it is  :D In the end, it turned out that Krys (from whom I read about the limit back in early 2008) was mistaken, and the limit is actually 32 cars... it was a fortunate mistake though, for now we (hopefully) have a convenient way of managing arbitrary amounts of cars in Stunts.

A screenshot is provided so that you can see what it does before downloading the zip. Some additional notes:

  • It is a Java program, so you'll need to have it in your system. If for some reason you don't, go to http://www.oracle.com/technetwork/java/javase/downloads/index.html and look for "Download JRE".
  • If Java is properly installed in your system the launcher scripts (SCS.bat for Windows; SCS.sh for Linux) can be used to start the program in one click (if they fail, check the readme for suggestions). Just unpack SCS.jar and the scripts into your Stunts folder and launch it.
  • The program is, as far as I can be aware of, unable to eat your cars, Stunts folder, hard drive or dog - it can not remove files and only overwrites things if explicitly allowed. Still, if you want an extra layer of reassurance there is a command that backs up all active cars into a separate folder.
  • Please try it! and do tell me of any problems on launching or running it - specially because my opportunities to test it under Windows are rather limited.

Enjoy!  ;)
#91
Competition 2010 / ZCT112 - Hihetetlen
October 02, 2010, 06:21:44 AM
Really interesting track! Many things to explore this month  8)
#92
Stunts Meetings / Brazilian mini-meeting...
September 29, 2010, 03:17:11 AM
...in São Paulo, attended by Renato Biker and Duplode. We spent this afternoon talking about Mathematics, Life, the Universe... and also a bit of Stunts, of course. After having quite a fight with Renato's laptop to make DOSBox work properly we managed to have some fun with live racing. It was not a proper live race, just the two of us taking turns fooling around at Z110 with a P962 and NoRH while trying to adapt to using the numpad arrows, for the regular arrow keys on his laptop were way too "sticky" and laggy). Though I did not keep the scores, after several amusing warm-ups and spectacular failures we both settled on the range of low 1:22 - high 1:21.

For the records, here is a pic taken at the University grounds. If you haven't seen any pic of either of us I am the one on the left. It's a bad photo self-taken by a bad photographer (that is, me) with a bad camera, but you get the idea. And, as a bonus, the long-lost Z69 winning replay, which will of course be added to the next edition of the Competition Archive.
#93
WMCS 2009 / WMCS 11
September 12, 2010, 01:03:15 AM
Oh wow. This makes me think of my "legendary" tracks built on another aeon. And reminds me of an idea...
#94
Chat - Misc / Languages
September 02, 2010, 08:26:53 AM
My friend took me to her elementary Swedish class this night. It came off as a lovely, pleasant language, and one which seems surprisingly easy if you have a good grasp of English. That fits well with the impression I had about the other side of the Øresund - even if I was not really understanding what was written, the Danish on the Wikipedia and (possibly) on Jacob and Brian's Facebook posts sounded nicely familiar.
#95
Competition 2010 / ZCT108 - Muffin
June 02, 2010, 01:33:55 AM
"Pure" racing tracks are back in fashion it seems  :)
#96
Competition 2010 / ZCT106 - Presto
April 03, 2010, 07:14:10 PM
Track spoilers : You will find a few unusual track sections when racing Presto. If they feel too bewildering after your first try, read on...







  • The bridge chicane. Don't be confused by the optical illusions and just drive it as a walled right-left chicane. By finding the right breaking point and trajectory you should be able to drive it at least as fast as a conventional small corner.
  • The fast chicane with barriers. The solid bridge pieces being used as barriers are there to prevent fast grass shortcuts. So what you need to do is to keep the car on the asphalt, especially through the middle part of the chicane, and you should be fine.
  • The final section. Again, don't be scared by the special effects and just drive straight through the jump and to the finish as fast as possible.

As for the rest of the track the key point is finding an effective trajectory, potentially using grass cuts, speed adjustments and maybe controlled slides. That is especially true for the tricky sections after the loop and the banked road stretch, where there are multiple reasonable racing lines to choose. In general, however, there is one easier way to do a section if you'd prefer to think about it later. Having a good look at the track map helps too...

The key message is : don't get scared! :)












#97
Stunts Chat / The truth about fast grass
March 14, 2010, 12:24:03 AM
A while ago I asked dstien and clvn for the toolkit they are using for the reverse engineering stuff so that I could fool around a bit with the disassembled code. Goals of doing so include understanding the basics of assembly, performing some analysis which might some day be relevant to their porting efforts and, if possible, finding possible immediate targets for modding in the .EXE itself. As for the latter of these goals, there some interesting and maybe even useful modifications which are possible already, but I won't give details until they actually come into fruition in order to avoid creating vaporware. Thing is, inserting any piece of code into an existing executable may require fixing thousands of memory addresses, and even trivial modifications can become complicated due to issues such as the way the code is optimized, which reduce a lot the flexibility of the "dirty" approach to hacking I am forced to take (as I can't code neither C nor assembly properly).

There is, however, one very amusing discovery which was made possible by understanding how track elements are built. To make a long story very short, after the game reads a tile value from the .TRK it uses it to load a chunk of data which contains all relevant information about the track element. Within this piece of data, there is a number which tells the game what the physical model of the element should be. The number points to one of many branches of code in one particular place of the .EXE. When you drive through a track element, the game (among many many other things) runs through the branch assigned to the element, where it uses the car coordinates to decide what the car will have to face (whether there will be a sloped surface at that particular position, or ice, or a wall...).

These branches of code (there are around 50 of them IIRC) are a royal mess to understand for even slightly complex track elements. But for flat roads and corners they are not complicated at all. For a straight road all it does is check whether the x coordinate of the car is between +120 and -120 (the limits of the paved part of the track). If so, it sets a flag which assigns the correct paving (asphalt, dirt or ice). If not, it will just default to grass. Corners (both small and large) are pretty much the same thing, except that before checking the boundaries the game calls a helper routine to trace a circumference to be used as centerline instead of a straight line, and then checks the +-120 limits around the relevant part of the circumference.

Now, something funny happens when you read the code for chicanes. Initially I expected to find either some glaring obvious bug to account for fast grass or nothing at all. Instead, there is a neat little bit of code which makes use of the large corner routine. It looks somewhat like this:



"Very clever!", one might think. By mirroring the tile along x and z axes whenever you cross to the right half of the element you should get two symmetrical half-corners which, when connected, make a chicane. A nice solution in theory. But there is a slight problem, which can be better explained with this pic...



This is the result of a quick n' dirty Stressed experiment in which I mirrored the four tarmac segments at the end of a corner along x and z and strapped them at the other end, which is roughly what the code I described is supposed to do. As you can see, it doesn't quite match...

But, if the code is broken, whatever happened to our chicanes? The answer is discreetly nested in the "few extra lines" I mentioned in the diagram. In fact, I can even picture how the developing team came to the actual solution. They probably were in the final stages of design and decided to code the chicane as an afterthought, after someone came up with the idea of mirroring a half-corner. Soon enough, however, they noticed it wasn't working as expected. By that point they must have been in a rush to finish the game already, and so instead of trying to figure out how to fix it they chose the "screw it" route and added this little coding gem, which looks like this in assembly:

Quote from: Stunts developers feeling funnymov     al, [bp+var_12]
mov     byte_44D47, al

What does it do? Simple answer. [bp+var_12] is the flag which indicates the track surface associated with the OWOOT part of the chicane (asphalt in this case), and byte_44D47 is the flag which tells the game on which kind of surface the car is currently on. By copying one to the other this early in the code they assured the whole four-tile area of a chicane would behave as asphalt, regardless of whatever broken code they left behind.  :D And thus fast grass was born - not as a true bug, but rather as a, hmm... "crude"  ;D improvised solution to avoid having an obviously broken track element.

(In case you are wondering, I am trying to work out a way to disable the fast grass "feature". But more on that later on... ;))
#98
Stunts Chat / New Online Track Viewer
March 10, 2010, 03:55:23 AM
The classic PHP track viewer by Jonas Baehr is now out of order, so I wrote a new one.

http://scr.stunts.hu/trkview.php

It is fully functional already, but I will likely make some small improvements. It was designed to be lightweight and modular, so that the code can be reused in other contexts (say, in an online track database browser). I will gladly share the sources and comments if Zak or other site owners are interested. Feedback is appreciated as well, of course. Have fun!
#99
Southern Cross Stunts Trophy / Hall of Fame
February 12, 2010, 02:28:34 AM
An "Awards" section was just inaugurated with the awarding of the first Alpha Crux Medal to Mark L. Rivers for his title on the 2009 season. Visit it here. Southern Cross is still a operational organization, so more events are expected to be held eventually - and you will be able to challenge for a Medal too  8)
#100
Motor sports, Racing / Formula 1 in 2010
February 09, 2010, 09:23:13 PM
How come we didn't have this thread yet? Big rule changes, major driver line-up reshuffling, several new teams, last-minute financial dramas... and some of the best-looking cars in a long while - please vote on the poll! ;) (you can change your vote later to account for still unreleased cars)