1 (edited by megamansec 2014-02-04 23:28:09)

Topic: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

Today, I am pledging $2,000 USD to the development of Teeworlds.


The way this will work, is that for everybody that fixes a bug, or adds a feature(that has been "accepted" for teeworlds), will get a portion of the $2,000.

Hopefully rewards will give an incentive to further develop teeworlds, and help build Teeworlds' code-base.
A lot of great developers are part of the Teeworlds community, but it's not worth their time to code anything because time is money.
This is where this "bounty" comes into play.




The amount given for each patch will depend on..

1. The amount of work put into it, and
2. The "importance" of it.

i.e; If you fix a spelling mistake, you'll get a few cents. If you fix(and find) a remote crash, you'll get $200+

These 'rewards' will only be given to people who actually want them.
If you would like the money that would normally be rewarded to you put back into the "pool" for future developers/development, there will be no problem.



Rules/Guidelines.

1. All payments will be made with bitcoins. You can create a free bitcoin wallet online here: https://blockchain.info/wallet/new

2. Rewards will only be given after the code has been pulled by the current owner of the teeworlds Git repo.(https://www.github.com/teeworlds) (Currently Oy)

3.  The amounts rewarded are non-disputable, and are subject to the quality and quantity of code, and to what they are [meant to be] doing. --- If you're not happy with the amount you're rewarded, get over it. I will be rewarding generously.  "Abuse" of any kind towards me will be an instant disqualification.

4. Any "demanding" of a reward for something will result in immediate disqualification of any sort of bounty. Be polite.

These guidelines are subject to change, but here is a tip to not getting into trouble/losing your reward...

Don't be stupid. Think with your head. The money is not important; The development of Teeworlds is.


It's worth noting, that as of current, the person that merges all pull requests into the main repo of teeworlds, Oy, is half-inactive at the moment. So your pull request may go un-pulled for weeks, or even months.
PLEASE REMEMBER THIS!




Current (known) bugs can be found here: https://github.com/teeworlds/teeworlds/ … state=open


If you are to submit a pull request/patch, when you do so, please PM me on this forum with a link to your pull request, and we'll go from there.


For all new developers of the Teeworlds code, please read https://www.teeworlds.com/?page=docs&am … menclature for code guidelines.

The current IRC for Teeworlds is: #teeworlds , at irc.quakenet.org.


If there are any questions, please PM me.

2

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

Before anything, I would like to notice you that most devs can be contacted on quakenet IRC, channel #teeworlds.

Not Luck, Just Magic.

3

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

I do have a few questions on this and I will post them here directly since they may concern others as well.
1. What is your relation to the devs? Are you one of them? Are you in contact with them?
2. What is your motivation to do this?
3. Would you let the community decide which contribution is "more important" or do you decide by yourself? If latter: how do you ensure you don't motivate changes that aren't in the interest of the community or the devs?
4. Have you considered donating to the devs instead?

4

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

He has already sent
<JulianAssange> https://blockchain.info/tx/f7d6a0ce6c81 … 388f7fb4f4
<JulianAssange> enjoy
to matricks.

The devs don't want/need more so he encourages the community.

5 (edited by megamansec 2014-02-05 06:56:05)

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

Teelevision wrote:

I do have a few questions on this and I will post them here directly since they may concern others as well.
1. What is your relation to the devs? Are you one of them? Are you in contact with them?
2. What is your motivation to do this?
3. Would you let the community decide which contribution is "more important" or do you decide by yourself? If latter: how do you ensure you don't motivate changes that aren't in the interest of the community or the devs?
4. Have you considered donating to the devs instead?

1. I was semi-active in the development community a few years back. I am not a developer. I am in contact with developers, through IRC.

2. I love teeworlds, and I want to see it progress.

3. Probably not. I have a general idea as to what is important, etc..

In response to "how do you ensure you don't motivate...[....]", the 'rewards' will only be given to code that is pulled into the main repo by Oy/Minus. So if it doesn't make the game, then there's no reward. That's why I tried to focus more on the bug fixing sides, like https://github.com/teeworlds/teeworlds/issues/394 for example.
Because the money is only going to the members that actually create the patches, there is no real incentive for Oy/Minus to pull code that they normally wouldn't want.

Personally, if I were a developer interested in making new features, I would only work on things that have more-or-less been "approved". For example https://github.com/teeworlds/teeworlds/issues/40 .
I'd probably stay away from the new feature coding, and stick to the bugs.

4. I offered to donate the $2,000 to Teeworlds, but Matricks denied, stating that he "wouldn't know what to do with it"(in regards to Teeworlds)..
I later sent him $500 for creating Teeworlds in the first place.

I decided that the best thing I could do is further the development of Teeworlds, without actually doing it all myself(because I mostly lack the sk1llz)

6

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

Hello. Will you also be funding pull requests for new features such as the community requested ones from the thread below?
Check for the useful list of them that I compiled on the last page of the thread:
https://www.teeworlds.com/forum/viewtop … 10516&

-SALAD

7

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

SALAD wrote:

Hello. Will you also be funding pull requests for new features such as the community requested ones from the thread below?
Check for the useful list of them that I compiled on the last page of the thread:
https://www.teeworlds.com/forum/viewtop … 10516&

I'll fund anything that actually gets into the main repo.
BTW, Hi Dalas, it's me, DemonulPierdut wink

8

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

https://github.com/teeworlds/teeworlds/issues/40 is trivial, you only need to copy some code from Android version, I've added links to code to the issue. I don't feel like doing that myself, because I'm lazy, and don't care much about PC side (and don't currently have gamepad to test).

9 (edited by eeeee 2014-02-13 03:34:16)

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

Consider using a specialized platform for development bounties, like https://www.bountysource.com/
More fun that way! Other sponsors can join and participate too.

10

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

well at least give him the forum donor title?

Wes.Mp3 - Now Playing: Celine Teeon - "I'm hooking into you"
Endurance[USA] - CTF5

11

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

Now approaching a decade since inception (2007), this game is still in beta with UI design philosophy that's outdated (shall I cite some 90's programs/sites?), flawed network coding (or perhaps just not updated to the most recent network protocols?), and crucial options for settings (especially video). $2,000 does not seem like a sound incentive for the devs. You might as well take over the development of TW and hire programmers with the $2,000 since TW is open-source.

12

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

To me, coming from OpenLieroX background, TeeWorlds net engine looks like an example of simplicity and elegance. Just send full world update in each packet to each client, no complicated partial updates, no client desync, no players eating your bullets and not dying, and no self-shooting, when your bullets spawn behind you.
What 'recent network protocols' are you talking about? I know just two - TCP and UDP, and they both are damn old. IPv6 is supported since 0.6.0.

And what's wrong with UI? There are buttons, you can click them, what else do you need from them?

$2000 will hire you some student for a month, who will spend half of it just getting familiar with the code, then will fix two easiest bugs, and call the job done, or a competent dev for two weeks, who will most likely refuse, because already got full-time job, which pays more. Or Google employee for 20 minutes tongue

13

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

Pathos wrote:

Now approaching a decade since inception (2007), this game is still in beta with UI design philosophy that's outdated (shall I cite some 90's programs/sites?), flawed network coding (or perhaps just not updated to the most recent network protocols?), and crucial options for settings (especially video). $2,000 does not seem like a sound incentive for the devs. You might as well take over the development of TW and hire programmers with the $2,000 since TW is open-source.

I'm not an UI guy, I don't really know about that.

But I'd like to ask what's wrong with the network code, (that's a genuine question, I honestly don't know that something is wrong with it) and also what kind of options you're talking about. I'm mainly wondering about the network though.

14

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

pelya wrote:

To me, coming from OpenLieroX background, TeeWorlds net engine looks like an example of simplicity and elegance. Just send full world update in each packet to each client, no complicated partial updates, no client desync, no players eating your bullets and not dying, and no self-shooting, when your bullets spawn behind you.
What 'recent network protocols' are you talking about? I know just two - TCP and UDP, and they both are damn old. IPv6 is supported since 0.6.0.

And what's wrong with UI? There are buttons, you can click them, what else do you need from them?

$2000 will hire you some student for a month, who will spend half of it just getting familiar with the code, then will fix two easiest bugs, and call the job done, or a competent dev for two weeks, who will most likely refuse, because already got full-time job, which pays more. Or Google employee for 20 minutes tongue

There are so many programmers that are unemployed around the world that they'll take any wage, if we can even call it a wage. For the industry's sake, there are news that talk about how programmers in OECD countries outsource their own job by hiring programmers themselves from other countries, such as China, Vietnam, etc.

heinrich5991 wrote:

I'm not an UI guy, I don't really know about that.

But I'd like to ask what's wrong with the network code, (that's a genuine question, I honestly don't know that something is wrong with it) and also what kind of options you're talking about. I'm mainly wondering about the network though.

I've posted it about this before a couple of times and sought guidance from many veterans in-game. There are constant network spike issues and interesting ping issues. I've confirmed that I'm not alone in this, but I'm not sure if everyone suffer from it.

The most easily verifiable one is when a TW server that's within your own network. For example, I hosted a TW server and various other programs. All other programs give me 0-2 ping, but TW gives me double digit pings! I confirmed this problem with LordFalcon.

For the harder-to-confirm part, and I'm not an expert on sniffing, I took a look at TW connection through WireShark and there were some things that I've never seen before from few other programs I've looked at. Since my experience with this is narrow, I won't say much further.

To emphasize, I do not have any of these problems in any other applications.

15

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

Pathos wrote:
heinrich5991 wrote:

I'm not an UI guy, I don't really know about that.

But I'd like to ask what's wrong with the network code, (that's a genuine question, I honestly don't know that something is wrong with it) and also what kind of options you're talking about. I'm mainly wondering about the network though.

I've posted it about this before a couple of times and sought guidance from many veterans in-game. There are constant network spike issues and interesting ping issues. I've confirmed that I'm not alone in this, but I'm not sure if everyone suffer from it.

The most easily verifiable one is when a TW server that's within your own network. For example, I hosted a TW server and various other programs. All other programs give me 0-2 ping, but TW gives me double digit pings! I confirmed this problem with LordFalcon.

For the harder-to-confirm part, and I'm not an expert on sniffing, I took a look at TW connection through WireShark and there were some things that I've never seen before from few other programs I've looked at. Since my experience with this is narrow, I won't say much further.

To emphasize, I do not have any of these problems in any other applications.

"Constant network spike issues" – I'm not sure what you mean.
The pings – do you know how the ping is calculated in Teeworlds vs how it is calculated in other programs/games?
About the third paragraph, it's probably hard to make any sense of the packets in Wireshark, because there's no Teeworlds dissector built-in.

16

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

heinrich5991 wrote:
Pathos wrote:
heinrich5991 wrote:

I'm not an UI guy, I don't really know about that.

But I'd like to ask what's wrong with the network code, (that's a genuine question, I honestly don't know that something is wrong with it) and also what kind of options you're talking about. I'm mainly wondering about the network though.

I've posted it about this before a couple of times and sought guidance from many veterans in-game. There are constant network spike issues and interesting ping issues. I've confirmed that I'm not alone in this, but I'm not sure if everyone suffer from it.

The most easily verifiable one is when a TW server that's within your own network. For example, I hosted a TW server and various other programs. All other programs give me 0-2 ping, but TW gives me double digit pings! I confirmed this problem with LordFalcon.

For the harder-to-confirm part, and I'm not an expert on sniffing, I took a look at TW connection through WireShark and there were some things that I've never seen before from few other programs I've looked at. Since my experience with this is narrow, I won't say much further.

To emphasize, I do not have any of these problems in any other applications.

"Constant network spike issues" – I'm not sure what you mean.
The pings – do you know how the ping is calculated in Teeworlds vs how it is calculated in other programs/games?
About the third paragraph, it's probably hard to make any sense of the packets in Wireshark, because there's no Teeworlds dissector built-in.

Hmm, I see. That could explain some.

Is there information how TW calculates ping? Please direct/link me. Thanks!

17 (edited by pelya 2014-03-22 22:55:39)

Re: Financial Incentive for TeeWorlds Development (Bug/Development Bounty)

Pathos wrote:

There are so many programmers that are unemployed around the world that they'll take any wage, if we can even call it a wage. For the industry's sake, there are news that talk about how programmers in OECD countries outsource their own job by hiring programmers themselves from other countries, such as China, Vietnam, etc.

Go find an unemployed programmer with adequate skill in China, without learning Chinese yourself, I challenge you.

Unemployment for a programmer usually happens when said programmer either cannot do any moderately complicated job, or lacks basic discipline / skips work without notice, or knows only one narrow dying area, such as Cobol, and doesn't want to learn at all. Or just plainly does not know English. In either way, you do not want to give your money to such person.

It absolutely does not matter to you if you'll search for programmers in China or Vietnam - they also have access to Internet and to job sites, you know, and can find a lot of better offers from businesses around the world. You should hire Chinese programmers only if you know Chinese language, so you can hire someone who doesn't speak English, and does not ask for big money because of that.

Here's the article about the guy who outsourced his job to China, I would say he is an awesome manager, if you don't consider the fact that he totally screwed up that company security policy, which was the reason why the company itself did not outsource the job.
http://edition.cnn.com/2013/01/17/busin … job-china/

If no one will want to get this job, it might be reasonable to go to some freelance site, and create some tasks there, here's an example: https://www.odesk.com/o/jobs/browse/c/s … velopment/

The most easily verifiable one is when a TW server that's within your own network. For example, I hosted a TW server and various other programs. All other programs give me 0-2 ping, but TW gives me double digit pings! I confirmed this problem with LordFalcon.

TeeWorlds server deliberately limits network traffic to not overload network, that's likely the reason why you're seeing high pings. You'll typically never get a ping lower than 10ms, because that's your screen refresh rate on client. Did you try to set parameter sv_high_bandwidth in server config?

Try launching Quake3 server and client on the same network, you'll get roughly the same pings as in TeeWorlds.