Jump to content
British Speedway Forum

Speedway Promoter Game?


Recommended Posts

www.simspeedway.com

 

Congratulations on the work, but paying £30 up-front per season is a lot in the context of the wider market. If an established games company were to make a commercial speedway game, I'd expect to be able to buy the game 'forever' for that sort of money - with its downloadable content - and play it for months on my PS3 and still only have a third of the trophies unlocked after 6 months...as well as getting online multiplayer features which are almost an expectation when paying £30 out for a game.

 

As we all know, Speedway is a bit niche for the likes of Electronic Arts to take a punt at, which is why this thread exists.

 

Nonetheless, it seems that SimSpeedway has been going since 2004, so there are enough people prepared to fork out that sort of money, and even keep coming back for more...?!

Link to comment
Share on other sites

Paul, at some point over the next few weeks I'll try and dig out as many of my started and parked up/failed projects as possible for you. Most are in C#/VB.net but if you're only looking for algorithms for determining heat results, tape touching, falls etc then the language simply doesn't matter. When I do get the code up over to you, be prepared, it's of a shockingly bad for someone who is paid to write code for a living :D

 

Thanks for the offer! How would you feel about putting the work into a shared GitHub repository rather than passing directly to me?

 

The fact that the work is in C#/VB.Net is a very good thing, as there isn't the same tie-in to a vendor (Microsoft) and platform (Windows) that has impacted the immediate usability of the Speedway Meeting code base. Microsoft started the .NET languages off, but there have been open source cross-platform implementations for a while (i.e MonoDevelop). It was very naughty of Microsoft to cut VB6 adrift the way they did - they failed to provide an easy upgrade path, and now refuse to open source VB6; from what I have read, there would certainly be a community available to make open-source VB6 a reality. The net result of Microsoft's unwillingness to budge on this issue is that it's not possible for me to open Speedway Meeting in an IDE, as, unsurprisingly, I do not have any installation CDs for Ye Olde VB6. It's not a complete blocker - all of the code can be viewed in a text editor so algorithms are available, and common sense could be used to derive a supporting GUI - but it's annoying all the same.

 

Anyway, it's great that there is willingness from more than one person to make previous work available, and there are also prospective developers on this thread, which is great. There is still a long, long way to go before a good open-source Speedway game is more than a pipedream - but I think someone putting some work on GitHub would be a significant milestone.

Link to comment
Share on other sites

Perhaps something akin to how xperteleven.com handle scheduling and pre-determined tactics would work in a speedway context. E.g. Choose line up in advance, configure a sequence of replacement criteria (heat number, meeting score criteria and preferred replacement) then have the meetings auto-calculate on a pre-set schedule.

 

For an example a league could be created with Tue/Sat @ 7pm as meeting time or maybe flexible like the real speedway fixture list with varied race nights to facilitating guests. Prior to this each manager can tweak the line up and tactics. At the meeting time a processing engine (e.g CRON job) calculates the results and maybe allows a 'replay' that iterates through each heat?

 

Such a concept could be created from PHP/MySQL or ASP/SQL and thus be accessible from PC, tablet, mobile phone to maximise potential players.

 

This is exactly how I would do it. I would avoid guests by allowing squads and managers have to pick their seven and set tactics ahead of the scheduled meeting time.

 

Then as you say, have a process which calculates results and displays then in an "updates" style.

 

Only downside is that it does take away some of the real-time elements.

Link to comment
Share on other sites

Anyway, it's great that there is willingness from more than one person to make previous work available, and there are also prospective developers on this thread, which is great. There is still a long, long way to go before a good open-source Speedway game is more than a pipedream - but I think someone putting some work on GitHub would be a significant milestone.

 

It's sort of been on my mind to develop a library with an API that does the result generation part. That way others could use the work in their own projects.

 

The bottom line though, is that anything to do with speedway is going to have be a labour of love. The market simply isn't there to recoup what will be a substantial investment in time, especially as speedway is a something of a unique sport and many of the components of any modern game or simulation will need to be developed from scratch.

  • Like 1
Link to comment
Share on other sites

 

It's sort of been on my mind to develop a library with an API that does the result generation part. That way others could use the work in their own projects.

 

The bottom line though, is that anything to do with speedway is going to have be a labour of love. The market simply isn't there to recoup what will be a substantial investment in time, especially as speedway is a something of a unique sport and many of the components of any modern game or simulation will need to be developed from scratch.

Blimey! Kevin Meynell...not a name I've seen on here for a long time!

Link to comment
Share on other sites

 

It's sort of been on my mind to develop a library with an API that does the result generation part. That way others could use the work in their own projects.

 

 

Yes, the way forward is for someone to get a first set of open-sourced components published to a shared repository...really whoever can find the time to get something substantial developed in an open-source language that is unlike to be cut adrift in the way that Microsoft washed their hands of VB6.

 

Then perhaps a web developer will follow up with a front-end...

 

Then a graphics designer can contribute an exciting graphical play-through of the race result pre-determined by the API (okay, I am getting greedy now...).

Link to comment
Share on other sites

Guest compost

Back in the late 1990's through to the early 2000's I ran a free email based Speedway manager game (it was called the ISL or Internet Speedway League and I think at least 2 of the posters here were Team managers).

It used Kevin's simulator to run the meetings along with a squad system for managers to select for their team for each round. The reason for mentioning this was that I ran it for between 3 & 5 seasons (I forget which and when I handed it on I didn't keep a copy) and found an irritating problem with the simulation. What it was was that as riders started each season with their finishing average from the previous season (various factors not withstanding such as a minimum number of rides/matches and so on) I found that a riders average tended to drop or rise towards an average of 6. A rider with a season start average of 10 usually lost between 1.5 and 2.5 points off that average by the end of the season whilst a rider on a start of say 3 would end up on 1 to 2 up. The game even had riders with a start of average of 12 but who never recorded a maximum despite riding in most of their teams meetings (in fact any form of maximum was a rare thing, I should mention that the game generally used the 13 heat format from the 70's and 80's). The upshot was that I, and several of the team managers in the game, felt that the simulator was unrealistic with too many 'fluke' results and not enough 'predictability'. I mention this because you may want to review the way the heat results are calculated in Kevin's simulator - sorry Kevin this is not a critism and I never mentioned it at the time (we did have some correspondence in that I sent you the team line-ups for the '65 and '66 BL seasons) as I only realised this issue towards the end of my time running the game and thought my recollection might be of use to Paul.

Link to comment
Share on other sites

The reason for mentioning this was that I ran it for between 3 & 5 seasons (I forget which and when I handed it on I didn't keep a copy) and found an irritating problem with the simulation. What it was was that as riders started each season with their finishing average from the previous season (various factors not withstanding such as a minimum number of rides/matches and so on) I found that a riders average tended to drop or rise towards an average of 6. A rider with a season start average of 10 usually lost between 1.5 and 2.5 points off that average by the end of the season whilst a rider on a start of say 3 would end up on 1 to 2 up. The game even had riders with a start of average of 12 but who never recorded a maximum despite riding in most of their teams meetings (in fact any form of maximum was a rare thing, I should mention that the game generally used the 13 heat format from the 70's and 80's).

 

Useful to know. There was an issue in earlier versions (pre-Windows) whereby the results seemed to be too predictable, so I tweaked the algorithm to improve the unpredictability although I may have overdone it.

 

My observation though was actually the opposite to you though - I still thought the top riders won slightly too much, and the 3-pointers lost slightly too much. I also thought the number of maximums seemed about right, but I can't say I did any empirical analysis on that factor. You probably have more practical real-life experience of running the programme though, so I certainly don't dispute your observations.

 

My suspicion though, is the average is the limiting factor, and however you tweak things you're going to see a drift towards the median. The fact the algorithm works on probability means that over the long-term it's never going to be possible for a rider achieve a 12-point average, and by definition that will mean the average of other riders will drift up. I guess other metrics need to be introduced to improve this aspect, but I didn't have 20-odd years of data when I first wrote the program. ;)

  • Like 1
Link to comment
Share on other sites

Back in the late 1990's through to the early 2000's I ran a free email based Speedway manager game (it was called the ISL or Internet Speedway League and I think at least 2 of the posters here were Team managers).

 

It used Kevin's simulator to run the meetings along with a squad system for managers to select for their team for each round. The reason for mentioning this was that I ran it for between 3 & 5 seasons (I forget which and when I handed it on I didn't keep a copy) and found an irritating problem with the simulation. What it was was that as riders started each season with their finishing average from the previous season (various factors not withstanding such as a minimum number of rides/matches and so on) I found that a riders average tended to drop or rise towards an average of 6. A rider with a season start average of 10 usually lost between 1.5 and 2.5 points off that average by the end of the season whilst a rider on a start of say 3 would end up on 1 to 2 up. The game even had riders with a start of average of 12 but who never recorded a maximum despite riding in most of their teams meetings (in fact any form of maximum was a rare thing, I should mention that the game generally used the 13 heat format from the 70's and 80's). The upshot was that I, and several of the team managers in the game, felt that the simulator was unrealistic with too many 'fluke' results and not enough 'predictability'. I mention this because you may want to review the way the heat results are calculated in Kevin's simulator - sorry Kevin this is not a critism and I never mentioned it at the time (we did have some correspondence in that I sent you the team line-ups for the '65 and '66 BL seasons) as I only realised this issue towards the end of my time running the game and thought my recollection might be of use to Paul.

This is a damn hard issue to avoid! You either find riders trend towards 6 or towards 12/0. It takes ages to find value that work.

Link to comment
Share on other sites

Guest compost

 

Useful to know. There was an issue in earlier versions (pre-Windows) whereby the results seemed to be too predictable, so I tweaked the algorithm to improve the unpredictability although I may have overdone it.

 

My observation though was actually the opposite to you though - I still thought the top riders won slightly too much, and the 3-pointers lost slightly too much. I also thought the number of maximums seemed about right, but I can't say I did any empirical analysis on that factor. You probably have more practical real-life experience of running the programme though, so I certainly don't dispute your observations.

 

My suspicion though, is the average is the limiting factor, and however you tweak things you're going to see a drift towards the median. The fact the algorithm works on probability means that over the long-term it's never going to be possible for a rider achieve a 12-point average, and by definition that will mean the average of other riders will drift up. I guess other metrics need to be introduced to improve this aspect, but I didn't have 20-odd years of data when I first wrote the program. ;)

 

Hi Kevin

Thanks for not telling me off as I really wasn't having any sort of go.

 

The comments in my previous post were what I found at the time - that the drift downwards in average was always higher than any improvement upwards. And there were very few maximums (paid, full or of the 'reserve' kind - the last being exceedingly rare). I don't remember the versions of the game used (initially it was the DOS version though). One other factor impacting on averages was that managers (in later seasons) were able to make a limited number of transfers into their squad (obviously riders would drop out) so in effect it wasn't a closed system. The fact that squads were used (12 mainly) would also skew final averages as a rider would not be 'guaranteed' a complete season. And rider injuries, generated through your simulator, could be anything between just the match injured in to being out for the entire season.

 

My comment on too many surprise results was based on roughly a 22 match league season plus divisional ko cup and inter-divisional cup (at one point there were 4 divisions operating so there was lot of sample data available).

 

Brings back memories.

Link to comment
Share on other sites

This is a damn hard issue to avoid! You either find riders trend towards 6 or towards 12/0. It takes ages to find value that work.

 

How about riders having attributes each with a score. The value of the attributes (multiplied by a random number) determines who wins a race, rather than averages?

 

Attributes also allow a manager to "train" riders, therefore creating a marketplace to buy and sell. The effects of training deteriorates with a rider's age until the point when it has no effect and a riders attributes start to fall.

  • Like 3
Link to comment
Share on other sites

How about riders having attributes each with a score. The value of the attributes (multiplied by a random number) determines who wins a race, rather than averages?

 

It would not be difficult to formulate some key attributes, although the relative weighting might take a bit of thought. The limitation is that many of these attributes other than averages are going to be subjective, and of course there's no ready source for these. Averages are easily obtained and (at least until recently in the Elite League) a fairly accurate measure of rider ability.

 

Of course, you might also want to have track attributes as well, which would have an impact on results.

Link to comment
Share on other sites

Back when I was a young teenager I would spend hours and hours devising such attributes to be used alongside the Speedway Scene II board game.

 

Every rider would have ratings for gating, a rating when leading a race, when behind, inside ability, outside ability, adjustments for conditions and also the individual track. I even had a system for riders morale, their experience (more laps on a particular track the better they would become) and even down to mechanics and engine tuning which could give a boost to performance (or not on occasion). All of this was done with pen and paper for the most part so a computer could handle it all a lot easier.

 

I had more fun in putting all of those factors together than actually playing through the season.

 

I converted much of it into a very basic game programmed in basic on the good old 48K Spectrum.

 

Essentially to me, the actual running of the meeting is the easy bit. It's all the rest I have no clue about programming wise.

  • Like 2
Link to comment
Share on other sites

Back when I was a young teenager I would spend hours and hours devising such attributes to be used alongside the Speedway Scene II board game.

 

Every rider would have ratings for gating, a rating when leading a race, when behind, inside ability, outside ability, adjustments for conditions and also the individual track. I even had a system for riders morale, their experience (more laps on a particular track the better they would become) and even down to mechanics and engine tuning which could give a boost to performance (or not on occasion). All of this was done with pen and paper for the most part so a computer could handle it all a lot easier.

 

I had more fun in putting all of those factors together than actually playing through the season.

 

I converted much of it into a very basic game programmed in basic on the good old 48K Spectrum.

 

Essentially to me, the actual running of the meeting is the easy bit. It's all the rest I have no clue about programming wise.

I, too, had the Speedway Scene Board Game and built a track and adapted it so that I could use the Britain's speedway riders incorporating some of the rules.

Link to comment
Share on other sites

Back when I was a young teenager I would spend hours and hours devising such attributes to be used alongside the Speedway Scene II board game.

 

Every rider would have ratings for gating, a rating when leading a race, when behind, inside ability, outside ability, adjustments for conditions and also the individual track. I even had a system for riders morale, their experience (more laps on a particular track the better they would become) and even down to mechanics and engine tuning which could give a boost to performance (or not on occasion). All of this was done with pen and paper for the most part so a computer could handle it all a lot easier.

 

I had more fun in putting all of those factors together than actually playing through the season.

 

I converted much of it into a very basic game programmed in basic on the good old 48K Spectrum.

 

Essentially to me, the actual running of the meeting is the easy bit. It's all the rest I have no clue about programming wise.

 

Precisely. The mechanics of a race are actually quite simple to model. I put together something simple in a hour using Excel with each rider having six attributes:
Gating
Passing
Speed
Team riding
Reliability
Aggression
The main challenge is getting the weighting of the attributes correct and how much randomness to introduce so that results are predictable, but not obvious.
  • Like 2
Link to comment
Share on other sites

Precisely. The mechanics of a race are actually quite simple to model. I put together something simple in a hour using Excel with each rider having six attributes:

 

Gating

Passing

Speed

Team riding

Reliability

Aggression

 

The main challenge is getting the weighting of the attributes correct and how much randomness to introduce so that results are predictable, but not obvious.

Don't forget 'confidence'; a roller coaster of an attribute that plays a huge part. Also perhaps some attributes linked to track type (some excel on the big ones yet struggle on the tighter circuits) and preparation (slick/grippy)
  • Like 2
Link to comment
Share on other sites

Don't forget 'confidence'; a roller coaster of an attribute that plays a huge part. Also perhaps some attributes linked to track type (some excel on the big ones yet struggle on the tighter circuits) and preparation (slick/grippy)

 

I've been playing around with Grip. The problem is it's the same for all riders, so you need to come up with some kind of weighting. I'm still trying to get my head around that on paper!

 

Track size is an interesting one, I hadn't thought of that.

 

Likewise Confidence (or I called it Form!) is an arbitrary figure, but I haven't worked out how this effects for outcomes (yet).

Link to comment
Share on other sites

Sporting dreams does a good game. Expensive to some but riders have stats and attributes other than just averages. Has track sizes and conditions as well as gating passing and track stats. Also has confidence and morale ratings. Fitness too and finances with depth. League, cup, 4tt , pairs. Grand prix. Works with a squad system too

 

If this was a computer game it would de as addictive as heroin

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy