1 (edited by Nilaya 2011-04-29 18:40:59)

Topic: [MOD] Flagball for Teeworlds 0.6

Hi everyone. This thread is a continuation of the previous flagball thread here.

This version is obsolete. Please obtain 0.2.0 from Jini further down.

I am proud to announce that the most interesting and strange teeworlds mod is now here for the latest version of teeworlds. I have to start by saying I do not consider myself a developer of this mod but my modest programming experience was enough to adapt the code and there was no way I was going to let this mod die in the transition.

I have given this the version number 0.1.17.2 as it is more based on Jini's previous release with very little in terms of new features or gameplay. I did not want to supersede that line of development. Any additional changes I make to my code base will be considered part of a separate branch until one of the more established devs could offer a better release.

So what all is different about 0.1.17.2?

A few defaults were modified to reflect the current flagball standards.
-Own goal is now off by default
-Instagib is on
-Default score for taking the ball from its stand is 0 for both teams

Two simple chat commands /info and /help have been added. They may or may not be useful. I just thought it would be a good idea to keep rules out of the motd as they can be rather annoying (that is, if rules were ever included in the motd at all).

Lastly, laser momentum no longer changes the color of the flag. It functions exactly as it always did before except that now the flags will remain the same color throughout the game. An issue came up where depending on the flag and the team who picked it up, the flag may have ended up lagging way behind the player for some unknown reason to me. Perhaps someone could take a closer look at this specifically. I would much appreciate it.

And so, before I blather on much longer, here it is.

Source Code

Linux x86 Binary

Win32 Binary

I plan to compile for other systems when I get the chance unless others get to it first. smile

Finally, as graphics have broken compatibility, many flagball maps have been rendered pretty useless. I'd love it if some of the mappers would provide updates otherwise I will have to reject them for my server and many were really good.

-Nilaya

2

Re: [MOD] Flagball for Teeworlds 0.6

Awesome, thanks! I wish I could say the same for other popular mods such as FNG where they soon will be left in the dust because no one released a decent copy of the source code. hmm

3

Re: [MOD] Flagball for Teeworlds 0.6

Good work nilaya!

-SALAD

4

Re: [MOD] Flagball for Teeworlds 0.6

Well done! Don't let flagball die!

Not Luck, Just Magic.

5

Re: [MOD] Flagball for Teeworlds 0.6

Flagball is sooo awesome! Thanks a lot Nilaya.

» Use the Search Function before opening multiple topics...
» Member of: JsA - Just stay Alloha! (since 2009)

6

Re: [MOD] Flagball for Teeworlds 0.6

Nice job, Nilaya! I have applied your patch to teeworlds trunk, put it all in git and made it available on my server. Everyone can fetch the latest development version with the following command:

git clone git://jini-zh.org/flagball

I have cleaned up a few things and am working on the laser momentum lagging issue. When I'm done with it I'll take a look on the problem with old maps and see if they can be converted automatically. Then I'll make the next release.

Thank you for all the hard work you've done.

7

Re: [MOD] Flagball for Teeworlds 0.6

Thank you very much Jini! I was hoping you would do some touching up for me. big_smile

8

Re: [MOD] Flagball for Teeworlds 0.6

Oook, but I get too many warnings and an error while compiling for Windows 32:

bam: 'other/icons/teeworlds_srv_gcc.coff' error 1
bam: error: a build step failed

Help?

9

Re: [MOD] Flagball for Teeworlds 0.6

It might be too early to say but I think since fng didn't make 0.6 so far, FB has replaced it as I see alot of fng players around the east coast server.

Good port !

10 (edited by Nilaya 2011-04-14 04:03:52)

Re: [MOD] Flagball for Teeworlds 0.6

Hip-Hop_BLOND wrote:

Oook, but I get too many warnings and an error while compiling for Windows 32:

bam: 'other/icons/teeworlds_srv_gcc.coff' error 1
bam: error: a build step failed

Help?

Whoops. Haha, you can blame me for not resetting the lua config file. It was still using my machine's settings.

Anyway, I just finished compiling for windows. Here you go!

Win32 Binary

11

Re: [MOD] Flagball for Teeworlds 0.6

Nilaya wrote:

Whoops. Haha, you can blame me for not resetting the lua config file. It was still using my machine's settings.

Anyway, I just finished compiling for windows. Here you go!

Win32 Binary

XD/ Shame on you! *kidding, thx man! smile

Nilaya wrote:

Instagib is ON

Does this mean it's only ibstagib or I must do something in the cfg to make it instagib?

12 (edited by Nilaya 2011-04-14 21:43:55)

Re: [MOD] Flagball for Teeworlds 0.6

Flagball can either be played as instagib or with weapons, provided the map you are playing on has weapons.

The config setting is sv_fb_instagib and the default is 1 so you don't have to add this to your config files if all you want is instagib. To turn instagib off just put 0 there.

13

Re: [MOD] Flagball for Teeworlds 0.6

Yeah! Great work smile
Will host a server
[+1]

14

Re: [MOD] Flagball for Teeworlds 0.6

Nilaya wrote:

The config setting is sv_fb_instagib and the default is 1 so you don't have to add this to your config files

How about providing us with one?

15 (edited by Jini 2011-04-14 22:19:51)

Re: [MOD] Flagball for Teeworlds 0.6

I'm releasing flagball-0.2.0-beta. Here is the changelog against version 0.1.17.2:

  1. Removed options:

    • sv_fb_on_idle and sv_fb_idle_time. Their functionality is now handled by teeworlds-0.6.0 options sv_inactivekick and sv_inactivekick_time.

    • sv_fb_ball_deathtile_idle. Since the ability to hook the flag is now inherent to flagball, I thought it shouldn't disappear that soon while lying on a death tile. Death tiles are no longer special. The case when flag flies out of the map is handled separately.

  2. Fix wrong scoring when someone grabs the flag from the stand. This bug was there from the ancient era, but the scoring has always been disabled anyway.

  3. Fix aforementioned lags with flag color switching. Unfortunately, it cannot really be fixed due to the way teeworlds client renders flags. In particular, it seems that two flags of the same color won't play nice. Hence the color switching of the inactive flag you may spot while picking the active one. Don't bugreport me that :> Also, it's the reason the color switching turns off when both flags are in game.

Sorry, it seems that I messed up my git repository during the setup, but it should work now. For those who have no git available, here is the full patch against teeworlds-0.6.0 release and here is the delta patch against version 0.1.17.2.

I have setup a server, everyone is welcome for the testing. Unfortunately, I cannot provide as flexible configuration as before, because it's the other mod, I haven't worked on it yet and I'm not sure if I will. So, no random maprotation, no votes with arguments, no whatsoever. Maybe I'll hack something later. Anyway, testers and regular players are welcome!

Also, I updated the maps that had the graphics broken. The problem was that the standard images the maps referred to have been changed incompatibly. I embedded old images into the maps, it greately increased their size but at least they work. Here is the list of maps I updated:

  • fb_aperture3

  • fb_blizzard

  • fb_eldesierto

  • fb_interstice

  • fb_jungle

  • fb_lake

  • fb_nightfight

  • fb_twilight

All are available on my server, as they used to be.

Edit: okay, the very few seconds playing with a partner has shown that lags are not gone. Also, I broke the nice hitting sound...

16

Re: [MOD] Flagball for Teeworlds 0.6

Hip-Hop_BLOND wrote:
Nilaya wrote:

The config setting is sv_fb_instagib and the default is 1 so you don't have to add this to your config files

How about providing us with one?

It's not difficult to figure out how to configure it. tongue

But here you go...

sv_name Flagball Server
sv_map fb_sandstorm
sv_scorelimit 500
sv_gametype fb

That's pretty much the most basic config. Check out configurations for teeworlds and if you are really curious about flagball settings check out the previous thread I linked to where most of the useful settings can be found.

17

Re: [MOD] Flagball for Teeworlds 0.6

Jini wrote:

Edit: okay, the very few seconds playing with a partner has shown that lags are not gone. Also, I broke the nice hitting sound...

It is a weird bug isn't it? I can't even figure out what might be causing it. Obviously they do flags differently in 0.6 but it's still strange. Oh, and when you get the time, Skadi redid the incompatible maps without embedding old tilesets and they are available here. Also, I have an updated version of fb_sol for you. big_smile

18 (edited by Jini 2011-04-15 00:02:15)

Re: [MOD] Flagball for Teeworlds 0.6

Yeah, I have talked to Skadi and adopted his versions of these maps. They are already on my server. The bug is weird indeed, I think I have broken it elsewhere too. I'll sort it out later.

19

Re: [MOD] Flagball for Teeworlds 0.6

The server has been running stable for a week, so I think version 0.2.0 is ready. Download links:

flagball-0.2.0

Delta against 0.2.0-beta

Delta against 0.1.17.2

Changelog against 0.2.0-beta:

  • [bugfix] Provide the hit sound in instagib mode too.

  • [bugfix] Finally fix flag lags related to color switching. As is in beta, two flags cannot have the same color simultaneously and not lag while being carried, so my previous notes are still applicable.

  • [enhancement] Direct pass to a player already holding a ball is denied. Together with other fixes introduced by Nilaya this should make games with two balls playable. It hasn't been tested much though.

  • [enhancement] Random maprotation has been implemented; see below for the description.

  • [bugfix] Do not allow players to spawn in goals or on the enemy base (highly unlikely) when all spawn points are occupied.

  • [enhancement] New server option implemented: sv_fb_spawn_weapon_discharge. It controls the amount of time a player cannot shoot after respawn. There were complains about accurate random shots occuring on respawn, this option probably doesn't fix the source, but makes them irrelevant, and, I hope, makes life a bit easier for attackers. It ranges from 0 to 100% of the laser recharging time, and is set to 50% by default. Consider setting it to 100%.

  • [enhancement] Another option: sv_fb_self_kill. When zero (default), self kill is disabled.

  • [deprecation] Option sv_fb_direct_pass_distance was deprecated a long time ago and has been removed.

Random maprotation is a hack I made to make maps appear in a random sequence on my server. It is activated by assigning the following value to sv_maprotation:

 sv_maprotation "!random flagball.mrt"

Where flagball.mrt is a plain text file made of two columns: map name and map weight, for example:

fb_sandstorm 0.4
fb_skyways   0.35
fb_sol       0.22
fb_jungle    0.17

Weights are normalized to obtain probabilities.

Here is a complete list of commands available in flagball rcon. For those interested, the list is generated by scripts commands.pl and multimarkdown you may find in scripts directory, just feed the output of the former to the latter (you need Text::MultiMarkdown Perl package for the latter to work, but the intermediate result looks nice too).

20

Re: [MOD] Flagball for Teeworlds 0.6

Thank you so much Jini! East Coast Tees will soon be running 0.2.0.


smile smile smile smile smile smile big_smile

21

Re: [MOD] Flagball for Teeworlds 0.6

@Jini or Nilaya:

Could you please release the source code for flagball-0.2.0, cuz I can't really patch it, it gives me an error, thx.

22

Re: [MOD] Flagball for Teeworlds 0.6

Hip-Hop_BLOND wrote:

Could you please release the source code for flagball-0.2.0

Here it is.

Hip-Hop_BLOND wrote:

cuz I can't really patch it, it gives me an error, thx.

What error?

23 (edited by HipHopBlond 2011-05-01 16:06:20)

Re: [MOD] Flagball for Teeworlds 0.6

Jini wrote:

What error?

I can't really remember quite well, it had something to do with Bosnian language file line 234 or something like that, but you should ignore that, cuz I was trying to patch it on windows...

Thx for the source, will build it for windows in a minute, btw I've been playing in your server last week, it's awesome smile

EDIT: So check it out, I tried compiling it, but I got this error:

D:\Microsoft Visual Studio 2010\VC\INCLUDE\xlocale(323) : warning C4530: C++ exc
eption handler used, but unwind semantics are not enabled. Specify /EHsc
src/game/server/maprotation.cpp(9) : fatal error C1083: Cannot open include file
: 'unistd.h': No such file or directory
bam: 'objs/game/server/maprotation.obj' error 2
bam: error: a build step failed

So I removed the "include unistd.h file" line from maproation.cpp since I guess you forgot to add it big_smile and it resulted in:

D:\bam\flag>D:\bam\bam server_release
[1/2] #1 c++ src/game/server/maprotation.cpp
D:\Microsoft Visual Studio 2010\VC\INCLUDE\xlocale(323) : warning C4530: C++ exc
eption handler used, but unwind semantics are not enabled. Specify /EHsc
[2/2] #1 link teeworlds_srv.exe
bam: done (0:10)

Aaand I guess... Congratulations big_smile

**>Download Windows Version<** (TESTED)

For all Clients, Servers and almost everything about TeeWorlds 0.6.0 up-to-date smile

EDIT2: Listen, when someone hooks an enemy with the flag, he automatically passes the flag to him, I believe we should be able to pass the flag only to our team mates, cuz otherwise we're just blocking the enemy making it easier to shoot him, and honestly most of the time all I wanna do is hook him out of my way... can't really do that without passing the flag to him (which is pointless nobody wants to pass the flag to the enemy). So my suggestion is to remove the hook enemy automatically pass the flag to him and leave it only for team mates so we can hook the enemy without passing the flag to him first. smile

EDIT3: I see players that when they can't kill they press a button to join specs then to join team again which takes 1.5 seconds and they are back at their base again, mb you cold add a protection against that, "can't join back game, until one of the team scores" smile Then let's see who'll join specs wink

EDIT4: When you "dunk" (score while holding the flag) you get killed and restart at your base, if you throw the flag and hit the goal zone you score but you don't get killed, leaving your goal unprotected in the next game (scoring is ok don't get me wrong) but I think when a goal is done the game should kill all tees making the next score chance equal for both sides. smile

Hope you look through my suggestions I really like your (Nilaya and Jini's) mod very much and mb we should play again sometime tongue

24

Re: [MOD] Flagball for Teeworlds 0.6

Hip-Hop, editing your messages days after the time when they were written with including additional valuable information isn't a good idea. The topic doesn't get bumped, and no one sees your edit. Strictly speaking, it might be against forum rules, but rules should be designed to suit people, not vice versa...

Sorry for these compilation errors, I don't have a lot of programming experience for the Windows platform. I'll try to make a cross-platform version of the maprotation and release it in 0.2.1.

Hip-Hop_BLOND wrote:

EDIT2: Listen, when someone hooks an enemy with the flag, he automatically passes the flag to him, I believe we should be able to pass the flag only to our team mates, cuz otherwise we're just blocking the enemy making it easier to shoot him, and honestly most of the time all I wanna do is hook him out of my way... can't really do that without passing the flag to him (which is pointless nobody wants to pass the flag to the enemy). So my suggestion is to remove the hook enemy automatically pass the flag to him and leave it only for team mates so we can hook the enemy without passing the flag to him first. smile

Hip-Hop_BLOND wrote:

EDIT4: When you "dunk" (score while holding the flag) you get killed and restart at your base, if you throw the flag and hit the goal zone you score but you don't get killed, leaving your goal unprotected in the next game (scoring is ok don't get me wrong) but I think when a goal is done the game should kill all tees making the next score chance equal for both sides. smile

Both these features are part of the gameplay. You may use flag passing to force the enemy to get the flag and thus become harmless until he gets rid of the flag plus, in the case of throwing, a considerable amount of time. Since you get your weapon fully charged, by means of a quick direct pass-shoot combination you can burst through the enemy and keep attacking. As for scoring by throwing, experienced players realize all its implications and take them into account in their strategy. It shouldn't be too easy to score, and in my opinion it is good that you also have to think past the scoring itself.

On the other hand they should be easy to implement, so if you really really want to, I may introduce a couple of options. But I believe that they alter the gameplay not in a good way.

Hip-Hop_BLOND wrote:

EDIT3: I see players that when they can't kill they press a button to join specs then to join team again which takes 1.5 seconds and they are back at their base again, mb you cold add a protection against that, "can't join back game, until one of the team scores" smile Then let's see who'll join specs wink

Nasty. I'll think about that. AFAIR, there were some sort of spamprotection which didn't allow people to change teams too often. I'll probably increase the delay.

25

Re: [MOD] Flagball for Teeworlds 0.6

Jini wrote:
Hip-Hop_BLOND wrote:

Could you please release the source code for flagball-0.2.0

Here it is.

And here it's compiled for Linux x86: https://downloads.teeworlds.com/solidfi … _0_linux32