Solved

Is this RTS engine pitch to Freelancer good?

Posted on 2014-10-04
7
166 Views
Last Modified: 2014-10-16
Hi
Many of you know I am making an RTS engine in Python.
I am doing okay - certainly on game setup, - I can get it up to just before server loop.

But, I am overwhelmed by errors I can't trace. As my first Python project, and needing to make an RTS, I know I'd do
 better if I had a complete and error free server and client engine from experienced people.
I am outlining a project for freelancer.com
What changes are crucial in my outline below?
Thanks
FREELANCER.COM pitch

Hi
I’d like experienced games programmers to create an invulnerable RTS engine for me in Python for potentially huge games. - Like 5, 6, 7,8,9 FFA, ( and big x  vs. x) like in Blizzard, MS games, How many players realistically is MAX?. There are many coders out there that know this front to back.
I’d also like the Client class to be abstract, so that I can create an abstract method, ‘ClientProcess() ’ to be called the instant the new client game state is updated and processable. The Client will have various ‘move’ methods to control units. I need the servers to be stored on my machines to disallow map hacking. Only valid vision must be sent to each player of the game-state. A terrain like Starcraft 1 would be desirous ( data structure wise) 3-D would be too ambitious.
I have client joining and pre-game working on client and server, and need it to be absolutely perfect, but from experienced minds for the transfer from pre-game into in-game server activity and client handling. The server must have a TCP and UDP link for each client, and,
 
1) client actions are sent to the server via UDP, be it an action or an empty cycle.
2) The game state is maintained and updated accordingly per cycle on the server.
3) The server sends to the clients the encodings of their visible units’ movements, activity, + newly visible units for that client’s vision.
3) The server sends periodic TCP complete-visible-game-state updates to the clients to guarantee synchronization.
4) Once the server receives a datagram per cycle from each client, a ‘ServerProcess()’ method can be called to include these client movements into the game cycling on the gameState Object.
So, There must be a gameState class in the server that can be updated every cycle with the passing in of client activity datagrams to be enacted on units, e.g attacks, moves, constructions - also, it is in this class how the game-state is maintained and incremented on the server. No hackable, useful data must exist on the client, only valid vision (e.g for a visual game window) 
5) En-Masse MPG unit moving on screen over terrain, with melee or ranged engagement would be a desirous demonstration of functionality. (This must be a window that extends the client class and updates the frame when the abstract ClientProcess() method is called after the new game-state is acquired. As my first serious Python project, but not first RTS, I don’t want to waste time making mistakes that are beyond repair in this complicated a situation.

Open in new window

0
Comment
Question by:beavoid
  • 3
  • 3
7 Comments
 
LVL 60

Accepted Solution

by:
Geert Bormans earned 250 total points
ID: 40372492
Maybe this is not what you are looking for on this technical forum, but here is some advice on posting projects on freelancer.com in general, since
- a lot of the freelancers on freelancer.com are students who think they can learn the programming language at hand whilst doing the project
- a lot of the freelancers at freelancer.com are dubious companies that take any project and you won't even know who will be doing it
This seems like an interesting and rather big project, so make sure you get the right person, because you are going to attract a magnitude of wannabes.
(I keep on communicating about this with freelancer.com, but there is little they can do about it)
- ask for a proof of experience (code maybe or other similar projects they have done)
- ask details about their background, professional, student, independent, team ...
- sneak in a visual marker in the project description (such as 'put the word banana somewhere in your bid') to filter bids of people that haven't even read the project description (if you have a high price project, up to 60% easily bid without reading!!!)
- get rid of amazingly cheap bids
- check the star rating, but be aware that high ratings are sometimes for teams, not for individual developers and I have encountered teams that pushed eachothers star ratings up artificially
- make a project timeline, if they miss the first milestone drop the project and make a repost or you will never get results
- make it clear that the first deadline is crucial
- make multiple milestones, only pay a very small initial milestone (10% or so) and agree that you will use the milestone mechanisms for pheses in the project, release one after actual delivery of a first part
- protect yourself against developers that run away halfway by making them deal with the hard stuff early on

But importingly. It could be you like the acrewal system of freelancer.com to have a safe environment for outsourcing development (it is a good system if you are getting the right people). You could consider approaching some of the good Python people on Experts Exchange here to do the project and invite them for a bid on freelancer.com... the real good freelancers are often here!

Good luck
0
 
LVL 78

Assisted Solution

by:David Johnson, CD, MVP
David Johnson, CD, MVP earned 250 total points
ID: 40372613
have you mapped out all of your storyboards, do you have all of the characters and rules set out.. it appears you are making a multiple player game.. have you got the front end (client side) at least in a working state? Where are the bitmaps going to be held (on the server) or on the client.. do you have any client/server experience? remember the BBB rule.. and be wary of it.. BS baffles brains.. You do have to set timelines and try to stick to them.. You may need to assemble a team and possibly a team manager.. Don't expect this project to be cheap  you may need venture funding (but without a track record it will be difficult) but maybe kickstarter can help out.. I think you need to do a lot more planning first.
0
 

Author Comment

by:beavoid
ID: 40373129
Thanks

The bitmaps are going to be in my domain's file system   ../graphics/tank.gif

I have a lot of server experience.
I have made a political blog.
I did an RTS in my final year, though it didn't keep the game state on the server, which is my main change this time. That will be working soon, and I'd just like experienced eyes to give me a definite 'yes' on its complete correctness.
There is an expert on EE who makes RTS's as a pro. I might ask him for a look see, because he'd have no reason to steal my code? - if they have working networking code, already...
0
What Is Threat Intelligence?

Threat intelligence is often discussed, but rarely understood. Starting with a precise definition, along with clear business goals, is essential.

 

Author Closing Comment

by:beavoid
ID: 40383585
Thanks, everyone

Your comments here,
along with a blatant instruction from another expert have made me realize that anything other than doing this * entirely * by myself w advice and guidance here, is a bad idea. If I come to a block, what I learn from each dead end, starts me off better and better each time.

I am very confident I can get this done.
thx
0
 
LVL 60

Expert Comment

by:Geert Bormans
ID: 40383680
welcome,
I did not really want to push you away from freelancer.com (don't get me wrong, there are really good people there too), just warn you that in order to be a succesful employer on that forum, it takes a lot of preparation and a very selective mind :-)

Anyway, let me wish you good luck with tackling this yourself
(and I hope "blatant" was not refering to me :-)
0
 

Author Comment

by:beavoid
ID: 40385675
Btw, some of the graphical artists there are amazing, and I think would not want to mess up their reputation.
Until now, I have done my games graphics in M S paint type quality. I'd bet the freelancers for artistry are trustable compared to my coding situation. I could never do anything close to their skill.  ?
0
 
LVL 60

Expert Comment

by:Geert Bormans
ID: 40386076
very true, I also have some nice graphics done by freelancer.com freelancers. But again, I also have some very good coding done by freelancer.com freelancers... you just need to get the right ones ;-)
0

Featured Post

Threat Intelligence Starter Resources

Integrating threat intelligence can be challenging, and not all companies are ready. These resources can help you build awareness and prepare for defense.

Join & Write a Comment

If you haven’t already, I encourage you to read the first article (http://www.experts-exchange.com/articles/18680/An-Introduction-to-R-Programming-and-R-Studio.html) in my series to gain a basic foundation of R and R Studio.  You will also find the …
This article is meant to give a basic understanding of how to use R Sweave as a way to merge LaTeX and R code seamlessly into one presentable document.
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now