"Rebuild" EvoRTS

"Rebuild" EvoRTS

A place for offers of Bounties and discussion of funded proposals.
Post Reply
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

"Rebuild" EvoRTS

Post by Forboding Angel »

I have been thinking about this for quite a while now and I suppose I will test the waters a bit.

There are a lot of core components to the gameplay in evo that are very hodge podge right now. On the playing front it works fine, but behind the scenes, shit is fuuuugly.

So in no particular order, here is a short list of what I would like to do, starting with gadgetry first.


Kanban is here:
https://tree.taiga.io/project/forboding ... rts/kanban


**************************************

Gadgets

Resources Cleanup:
*Eliminate mex spot finders and consolidate into a single system (preferably reading lua placement markers from a config file for where resource spots on the map should be). These spots should be marked with a graphic that is laid on the terrain (or perhaps something drawn in GL? -- because speed).

*Create a system that works similar to how geos are placed where mexes can only be placed on those aforementioned predefined plots. Technically, thanks to google frog, a system like this kind of already exists, but I need to specifically be able to make it so that mexes cannot be built without those markers, no exceptions.

Sidenote: Please understand that mexes in evo aren't mexes OR metalmakers. A gadget simply checks to see if the mex building exists and gives resources on a per second basis to the correct team/allyteam).


General Gadgetry:
*Help me identify and eliminate unnecessary gadgets or consolidate them if possible

*Help me with a better way of switching fire modes (needs ui hotkey for switching as well). The current solution works, albeit rather crudely and is difficult to control well.


Nice to have gadgetry column:
*Help me introduce an upgrade system, similar to sc2 style (I don't have any other games for reference) where weapon damage, unit hp, etc can be modified by percentages (I envision a system where you could upgrade nearly every part of your units abilities incrementally).


Widgets

(Chili) UI
Evo's ui is a hot mess. It's functional, and it works, but there are so many elements of it that I dislike. Much of it is crap borrowed stolen lifted from zk, because at the time zk was the only project with chili widgets that were able to accomplish what I needed.

All the parts of the ui need to be recreated. Some of the parts can probably be modified form existing widgets, and that is fine, but I need them to be properly done.

Note: No mockups for now, but if someone were to take this on I would make mockups before asking for any work to be done. It would be silly to try to blindly create things.

All UI elements MUST be responsive, scaleable and moveable with set default locations on the screen and an easy way to reset positions and sizes. This is so that different resolutions can be accommodated nicely.

Resource Bars
This includes metal, energy and supply. All 3 things should be numbers instead of bars. Color coded nicely so that you can tell when you are excessing or near to capacity. Income, outgoing and net should be displayed in a nice easy to reference fashion. Preferably with a little icon to the side (like normal) showing what each item is.

Player list
Player list should be hidden by default and referenced by a hotkey. When hotkey is pressed it should show all active platers sectioned by the teams they are on and then spectators in another section.

Build/order menu
This is the kicker. It is extremely difficult to design these nicely. I want something similar to integral menu but with a LOT of improvements.
Tabs - Yes
Hotkeys in a qwerty fashion - Yes
Hotkeys for the tabs - Yes

Menu items should be generated from the unit build lists, not from an external config. This of course limits the ability to do multirow lists (I.E. 2 icons on first row, 4 icons on next row, 1 icon below that, etc), but that's a sacrifice I'm ok with, because the way integral does it in a way that I dislike and I would love to get away from that.

Menu items should be the models of the units themselves (I believe this is possible because the idle builders widget does something like this. I'd love to see it on a build menu).

It should be possible to dismiss the build menu with a hotkey and allow an experience player to not use it at all using only hotkeys.

Orders menu should be separate from the build menu.

I'm leaving out details, but hopefully this is enough to get across the general idea.

Minimap

The default minimap is probably good enough as it is. I want it to actively display resource locations all the time though.

Chat
Needs to be color coded, automatically filter out all system info (with a checkbox to display all (warnings, errors, etc)). Needs to be scrollable.

Esc Menu
Ability to resign, exit game, adjust gfx/sound options -- volume sliders (WITH PERCENTAGE NUMBERS!) on the base menu for quick adjustments. Adjusting gfx options will write values to springsettings.cfg and items that require a restart will be marked clearly. I actually already have a widget that does this (in a very ugly non-configurable way).

---------------------

Changing the UI is going to allow me to dump a SHITLOAD of deadweight widgets, so that will make me quite happy.

These aren't in any particular order, but they should be enough to give a basic idea of what I'm going for.

Compensation
I'm thinking of a budget of $500 to start with and we can go from there. I'm not unreasonable and I work with in house development teams very day at my day job, so I'm not at all unfamiliar with the process. Of course we can negotiate on a per item basis.

Why are you doing this?
Because this is one area where I simply can't do it myself and I need help. Evo is a good and a fun game, but there are a lot of areas where improvement is desperately needed. I have known this for quite some time, but knowing it and having the means to do something about it are two very different things. I now have the means.

*********************

Enjoying evo as a game is a bonus, but not necessary. The reason I say that is because if you enjoy it, you probably have some better ideas of how to improve various aspects than someone who doesn't really know much about the game.
Last edited by Forboding Angel on 04 Jan 2016, 00:19, edited 2 times in total.
User avatar
PicassoCT
Journeywar Developer & Mapper
Posts: 10450
Joined: 24 Jan 2006, 21:12

Re: "Rebuild" EvoRTS

Post by PicassoCT »

Take a knife and cut, do not change what you got, just cut. Where you separate vital things, make functions that call other functions, and thus install connections that can easily be separated. Where to cut? You cut where there are the least connections, slowly separating things that have always been separate, while keeping the game working at all times.

Once you are done with this, start replacing the parts.Work from the most vital part outwards to the non-vital.
Do approach code not only as a gods gift but as a liability. Much code needs much maintenance, thus prevents you from actually making game.
if you have a choice between two solutions, go for the one with less code.

Do not expect somebody to come and save you. Noone ever comes and saves anybody.
If you want help, offer something only you can do in return. Collaborate.
Be aware that this will take time, time in which other games might seem to race and grow.
Be also aware, that this other games will slow down over time, as complexity eats the maneuverability and the mechanism are no longer able to change.
Ban people who make your threads philosuffer.
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: "Rebuild" EvoRTS

Post by Forboding Angel »

*sigh*, Picasso, your reply is very unconstructive. I haven't been unclear I don't think. If you have no interest, then that is fine, but it would be nice if you would let others decide for themselves.

There is money on the table. Yes of course there are things I can do springwise that may or may not be better or worse than other people. I'm willing to leverage that if need be, but the offer stands.
User avatar
Floris
Posts: 611
Joined: 04 Jan 2011, 20:00

Re: "Rebuild" EvoRTS

Post by Floris »

I don't think his reply is 'very unconstructive'.

You just don't want to hear anything other than: Yes sergeant, I'll follow your orders and expect little in return! I'd gladly make make you my boss and work on what you tell me to work on.

Picasso does has a point here. Collaboration. Money doesnt drive this community. Freedom of interrest is.

I dont care about Evolution RTS. I don't Care about ZeroK. I dont care about XTA. I dont care about ... insert mod name...
I care about my own shit. I started as player, and started devving just because I cared about the game.
But... I do care about my own code/contributions. I think we all do. If you like something... ask and ye could receive some collaboration.

Also, your request for help is nearly borderless. "Plz redo everything for/with me"

I'ts nearly like one of those 'idea guy' threads. "Here are my ideas, plz code for me." Oh.. and I offer peanut payment!


... sorry for the harsch message... (I'd like to be proven wrong though)
just take notice (and ignore me)
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: "Rebuild" EvoRTS

Post by Forboding Angel »

You both seem to not realize that you are posting in the bounty offers forum.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: "Rebuild" EvoRTS

Post by AF »

Sure, stripping away the stuff and paring it down to the minimum of what to keep is a good idea, but what's he meant to do after that? He's already said he lacks the skills to do the work, and needs help. That's kind of the point of this thread

I would help but I'm not familiar enough with the necessary APIs, or have the time to properly do it, though I certainly have ideas ( tabs? go for SC style menus and encourage people use hotkeys, and there's a lot spring has in its UI that doesn't need to be there for an RTS to work, so simplify )

In the meantime, I think a planning stage would be useful, a more comprehensive inventory of what you have, what needs to stay, and what needs to go. Not everyone will be familiar with the internals of Evo, and anything to help gauge how much work this is, and how much time is necessary will help get someone.

his should then be followed by a plan of what needs to be built on a more fine-grained technical level ( e.g. we need a gadget here, a set of widgets there, those will need a framework, etc ), so that you can break this bounty out into well defined tasks that individual people can grab independently. You need project management for this essentially.
User avatar
FLOZi
MC: Legacy & Spring 1944 Developer
Posts: 6240
Joined: 29 Apr 2005, 01:14

Re: "Rebuild" EvoRTS

Post by FLOZi »

AF wrote:In the meantime, I think a planning stage would be useful, a more comprehensive inventory of what you have, what needs to stay, and what needs to go. Not everyone will be familiar with the internals of Evo, and anything to help gauge how much work this is, and how much time is necessary will help get someone.

his should then be followed by a plan of what needs to be built on a more fine-grained technical level ( e.g. we need a gadget here, a set of widgets there, those will need a framework, etc ), so that you can break this bounty out into well defined tasks that individual people can grab independently. You need project management for this essentially.
This please.
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: "Rebuild" EvoRTS

Post by Forboding Angel »

Thanks AF, That was very helpful.

I was going off of the assumption that most of the people where are familiar with the common gadgets/widgets that get/got shared around and adapted between games. That said, it makes sense that most people would actually not be that familiar with them.

When I get home tonight I'll make a Taiga with all the things I'm wanting to accomplish.

The bigger issue for me is assigning monetary value to each item (which is why I said I was open for negotiation). Personally, I start to very much dislike a job if a) I'm not enjoying what I'm doing, and b) I'm "not getting paid enough for this shit".

No, I don't have terribly deep pockets, but at the same time I am not unreasonable nor unfair. I do a lot of negotiation and work with dev teams at my day job (and fwiw I do dev stuff on unrelated areas at work). But being a webdev I tend to look at stuff like this through that lens. When someone asks me how much I'm going to charge to do something I know will take me 5 minutes, I'll either do it for free and call it a day or just assign some abstract monetary value to it off of the top of my head. I understand that in a situation like this some of that may be necessary and I understand that.

That said, I didn't want to go too far down the rabbithole for nothing (I.E. If no one is even remotely interested I might just be wasting my time going into extreme detail). But, like i said, I'll take a chance and get into the nitty gritty.

One of the reasons I listed going through and helping me figure out what needs to be tossed and what should be kept was born out of the fact that a lot of the zk stuff has seemingly random requirements (they aren't random, but some of them are rather nebulous). For example, getting rid of the mex spot detection from zk would allow me to delete like 3 gadgets and 2 widgets (iirc). Stuff like that was what I meant by that. X is getting replaced, so what parts of Y can be pitched because they only existed as part of X.

That probably makes more sense if you are familiar with how a lot of that junk works, and frankly, it's difficult to explain.

I'll see what I can do.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: "Rebuild" EvoRTS

Post by AF »

I think that part of the process is that people who have the skills will be able to estimate timing and effort for you, or see parts that may be useful in a generic sense and build them for you ( albeit for entirely unrelated, selfish reasons )
User avatar
smoth
Posts: 22309
Joined: 13 Jan 2005, 00:46

Re: "Rebuild" EvoRTS

Post by smoth »

That is impossible to predict. Forb has old versions of libraries, some of his widgets can even be older. There are a lot of dodgy interactions creating some pretty fragile points in the code from years of slamming different pieces together with no cleanup. I have cleaned a few things in the past but there still are a lot of interactions. It is such a hodge-podge of widgets and gadgets that it would take some time to consolidate them, allowing for discovering in such a project could be 2-3x as long added to the time.
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: "Rebuild" EvoRTS

Post by Forboding Angel »

Most of what you are talking about, smoth, is gui chili widgets. Those are getting replaced, so they are completely irrelevant.
User avatar
smoth
Posts: 22309
Joined: 13 Jan 2005, 00:46

Re: "Rebuild" EvoRTS

Post by smoth »

Nope, your nano sprays break as well.

I wanted to go through and modernize your stuff but the entire JK suite needs to be replaced/updated. One thought I have had is in my repo removing all chili/lups stuff, then calling them as libraries outside of EVO.

1) this would give you less bloat.
2) it would allow me to isolate factors that are causing these widget/gadget issues.

From there I can go to town on other aspects.
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: "Rebuild" EvoRTS

Post by Forboding Angel »

I've made a board for this. I keep running out of time to populate it, but I'll try to "finish" tonight.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: "Rebuild" EvoRTS

Post by AF »

Have there been any recent advances?
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: "Rebuild" EvoRTS

Post by Forboding Angel »

Yes, but I realize that more detail is needed (which makes sense).

I also realized that the people reading the original post seem to think I meant "rebuild" as a literal term. I thought I had made it obvious that only certain parts needed redoing, but apparently not.

Some of my descriptions were purposefully abstract, this apparently doesn't set well. Needs more specificity.

Been busy with work, food poisoning the day after christmas (hows that for irony?).
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: "Rebuild" EvoRTS

Post by Forboding Angel »

Ok, I have created a board with the tasks (fairly detailed).

https://tree.taiga.io/project/forboding ... rts/kanban

WRT Compensation, I am open to negotiation. I don't want anyone tell feel as though they are doing a job without adequate compensation. I'm not rich or wealthy by any means, but I will do my best to reach a fair arrangement.

It should go without saying... All of this is ofc GPL and falls within the engine license. That should be obvious, but I'd like to make it clear. It would be really cool if various portions of this were useful to other games, but ofc that isn't a requirement.


Edit: there will likely be much more added over time. This is just the basics that I want to get done first before going for more lofty goals :-)
8611z
Posts: 169
Joined: 08 Jul 2015, 20:20

Re: "Rebuild" EvoRTS

Post by 8611z »

spring version?
User avatar
FLOZi
MC: Legacy & Spring 1944 Developer
Posts: 6240
Joined: 29 Apr 2005, 01:14

Re: "Rebuild" EvoRTS

Post by FLOZi »

Forboding Angel wrote:
Nice to have gadgetry column:
*Help me introduce an upgrade system, similar to sc2 style (I don't have any other games for reference) where weapon damage, unit hp, etc can be modified by percentages (I envision a system where you could upgrade nearly every part of your units abilities incrementally).

I have something like that in MCL:

https://github.com/SpringMCLegacy/Sprin ... _perks.lua

https://github.com/SpringMCLegacy/Sprin ... k_defs.lua

Price is USD $10,000,000 or nearest offer.
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: "Rebuild" EvoRTS

Post by Forboding Angel »

8611z wrote:spring version?
A really good question with an extremely problematic answer. Evo is currently stuck on 96. Being able to dump the gui will solve a lot of those problems but there are still issues with newer than 96. I have not looked recently to see what works and what breaks. I'm open to suggestions.
User avatar
PauloMorfeo
Posts: 2004
Joined: 15 Dec 2004, 20:53

Re: "Rebuild" EvoRTS

Post by PauloMorfeo »

Forboding Angel wrote:... Personally, I start to very much dislike a job if ... b) I'm "not getting paid enough for this shit". ...
I once heard this story (unclear whether it is just an old tale / urban myth).

A Jew opened a store in a neighbourhood where there was some anti-semitism (hate of Jews). There was a group of kids that, every day, would pop by his store and shout into the store, calling him "Jew, Jew!".

The Jew went to talk with the kids and told them to come back every day to call him a Jew and he'd pay them X (can't remember the values, let's say 10c) - and so he did, the kids came, called him "Jew!" and he paid them 10c. Sometime after, he told them he didn't have money for more and started paying them only 5c.

Finally, after some more time paying them 5c, he told them he could only afford to pay them 1c. The kids felt 1c just wasn't worth the trouble any more and stopped doing it (what they had happily been doing for free in the first place).

Saw it here, in this pretty good (and free/gratis) online course:
https://www.coursera.org/course/socialpsychology



Having said that (kind of hinting at the fact that receiving money for something, if low, might feel even worst than doing something for free), rewards can be quite motivating as long as it is perceived as "reward" instead of "low payment". So, if I can contribute anything to this thread and EvoRTS (sorry, I don't have skills for anything better) I recommend that you approach whatever work is required as help, with likely a party'ish bonus compensation (that is, "help" not "work", not "paid help", not "unpaid work", not "lowly paid work" but just "help" which will then likely lead to a bonus).

Erm, just throwing ideas... I don't know.

I'd like to see some balance changes in EvoRTS and critical mass in user base. I doubt the first one will happen unless EvoRTS is updated to become more manageable to change (your current plan, I reckon) and gets enough of a player-base using it to see/investigate/test balance changes. However, it saddens me but a change in critical mass seems to me unlikely. I fancy EvoRTS - I keep hoping it will start to gain traction regardless of knowing how hard it is for any "game" to gain traction in Spring...
Post Reply

Return to “Bounty Offers”