1 (edited by TT <3 2014-12-03 00:08:07)

Topic: [MOD] TW+ - iFreeze and Instagib-Mod

Hello Tees!
Started as experiment and just for fun, even in remembrance of Tom94's legendary TeeWorlds+-Mod I'm glad to present you now the final version of my TW+-Mod.
This modification is mainly directed to Instagib-players but of course Vanilla is supported too.

TW+ contains a lot of features which might be useful for one or two and is highly customizable, what means that you can disable features which you dont want or need.

Features:
  • New Gametypes (Possible: DM+, TDM+, CTF+, iDM+, iTDM+, iCTF+, iFreeze+, gDM+, gTDM+, gCTF+)

  • Mute-On-Spam

  • Anti-Capslock

  • Anticamper

  • Chat-commands to control the game

  • Private message

  • Spawnprotection

  • Logging player stats (useful for wars)

  • Loltext (by fisted)

  • Message loops for chat

  • Killing-spree and killing-spree award

  • Live-stats for every player

  • Emotional Tees

  • Laserjumps

  • ... many more

iFreeze+

As you see it also includes the iFreeze-gametype which was very popular in old 0.5.

The gameplay is similar to (open-)fng and TDM. You have just one weapon; your laser. If you kill a player he becomes frozen and cant move anymore. Your team will score when every tee of the opponent team is frozen, then all frozen players become melted and it starts again.

Of course you can also melt your teammates: When you stand near to a frozen teammate, after some time he becomes melted and can continue playing.
You will score both by freezing a opponent and melting a teammate. It is very important to melt your teammates, otherwise your team will probably loose.

Variables
 
# General things
 
sv_vote_forcereason
    Description: "Allow only votes with a reason (except settings)"
        Default: 1
        Minimum: 0
        Maximum: 1
 
sv_go_time
    Description: "The restart time for the go-command"
        Default: 5
        Minimum: 0
        Maximum: 600
 
sv_stopgo_feature
    Description: "Enable stop/go-feature in chat"
        Default: 1
        Minimum: 0
        Maximum: 1
 
sv_xonx_feature
    Description: "Enable chat-commands like /1on1 - /6on6 for wars"
        Default: 1
        Minimum: 0
        Maximum: 1
 
sv_war_time
    Description: "Default warmup-time before a war"
        Default: 15
        Minimum: 0
        Maximum: 600
 
sv_laserjumps
    Description: "Enable laserjumps (only in instagib)"
        Default: 0
        Minimum: 0
        Maximum: 1
 
sv_emotional_tees
    Description: "Enable emotional tees"
        Default: 1
        Minimum: 0
        Maximum: 1
 
sv_private_message
    Description: "Enable/Disable private message"
        Default: 1
        Minimum: 0
        Maximum: 1
 
sv_spawnprotection
    Description: "Spawnprotection in seconds (0 disables)"
        Default: 0
        Minimum: 0
        Maximum: 5
 
sv_laser_reload_time
    Description: "Reload-time for laser when you are not at killing-spree (Default: 800)"
        Default: 800
        Minimum: 0
        Maximum: 2400
_____________________________________________________________________________________________
 
# Mute-on-spam and Chat-settings
 
sv_chat_value
    Description: "A value which is added on each message and decreased on each tick"
        Default: 250
        Minimum: 100
        Maximum: 1000
 
sv_chat_threshold
    Description: "If this threshold will exceed by too many messages the player will be muted"
        Default: 1000
        Minimum: 250
        Maximum: 10000
 
sv_mute_duration
    Description: "How long the player will be muted (in seconds)"
        Default: 60
        Minimum: 0
        Maximum: 3600
 
sv_chat_max_duplicates
    Description: "How many duplicates of a chat message is allowed to send in a row (-1 for no limit)"
        Default: 3
        Minimum: -1
        Maximum: 25
 
sv_vote_mute
    Description: "Allow voting to mute players"
        Default: 1
        Minimum: 0
        Maximum: 1
 
sv_vote_mute_duration
    Description: "How many seconds to mute a player after being muted by vote."
        Default: 180
        Minimum: 0
        Maximum: 600
 
sv_chat_message
    Description: "A message which will be periodically shown in chat"
         Default: ""
 
sv_chat_message_interval
    Description: "The interval in minutes where the chatmessage is sent to the chat"
        Default: 15
        Minimum: 7
        Maximum: 1000000
 
 
# Anti-Capslock
 
sv_anticapslock
    Description: "If all letters of a chat-message are capitalized they will be lowercased"
        Default: 1
        Minimum: 0
        Maximum: 1
 
sv_anticapslock_tolerance
    Description: "How many letters of 10 are allowed to be lowercased that it just work"
        Default: 5
        Minimum: 0
        Maximum: 10
 
 sv_anticapslock_minimum
     Description: Minimum number of letters that the anti-capslock feature works"
         Default: 4
         Minimum: 1
         Maximum: 15
 _____________________________________________________________________________________________
 
# Anticamper
 
sv_anticamper
    Description: "0 disables, 1 enables anticamper in all modes and 2 only in instagib gamemodes"
        Default: 0
        Minimum: 0
        Maximum: 2
 
sv_anticamper_freeze
    Description: "If a player should freeze on camping (and how long) or die"
        Default: 0
        Minimum: 0
        Maximum: 15
 
sv_anticamper_time
    Description: "How many seconds to wait till the player dies/freezes"
        Default: 9
        Minimum: 5
        Maximum: 20
 
sv_anticamper_range
    Description: "Distance how far away the player must move to escape anticamper"
        Default: 200
        Minimum: 0
        Maximum: 1000
_____________________________________________________________________________________________
 
# Stats
 
sv_stats_file
    Description: "Name of the file where the statistics are stored in"
        Default: "stats.txt"
 
sv_stats_outputlevel
    Description: "How much informations in the statistics-file should be saved (0 to disable saving)"
        Default: 0
        Minimum: 0
        Maximum: 3
_____________________________________________________________________________________________
 
# Loltext
 
sv_loltext_show
    Description: "Show loltext"
        Default: 1
        Minimum: 0
        Maximum: 1
 
sv_loltext_hspace
    Description: "Horizontal offset between loltext 'pixels'"
        Default: 14
        Minimum: 10
        Maximum: 25
 
sv_loltext_vspace
    Description: "Vertical offset between loltext 'pixels'"
        Default: 14
        Minimum: 10
        Maximum: 25
 
sv_loltext_lifespan
    Description: "How long the loltext is shown"
        Default: 50
        Minimum: 25
        Maximum: 100
_____________________________________________________________________________________________
 
# Grenade-Gamemode(s)
 
sv_grenade_min_damage
    Description: "Minimum damage the grenade must make to kill the player (depends how far away the bullet explodes)"
        Default: 4
        Minimum: 3
        Maximum: 6
 
sv_grenade_ammo
    Description: "How much ammo for the grenade"
        Default: 6
        Minimum: -1
        Maximum: 10
 
sv_grenade_ammo_regen
    Description: "Time till one bullet regenerates"
        Default: 1000
        Minimum: 800
        Maximum: 2000
_____________________________________________________________________________________________
 
# iFreeze
 
sv_ifreeze_automelt_time
    Description: "Time till the player respawn automatically when he's frozen"
        Default: 30
        Minimum: 10
        Maximum: 120
 
sv_ifreeze_melt_range
    Description: "Maximum range to melt a player"
        Default: 100
        Minimum: 10
        Maximum: 1000
 
sv_ifreeze_melt_time
    Description: "Time (in ms) the player must stand next to a player to melt him"
        Default: 1200
        Minimum: 500
        Maximum: 5000
 
sv_ifreeze_melt_respawn
    Description: "If a player respawns after he was being melted"
        Default: 1
        Minimum: 0
        Maximum: 1
 
sv_ifreeze_frozen_tag
    Description: "If frozen players have "[F]" in front of their name"
        Default: 1
        Minimum: 0
        Maximum: 1
_____________________________________________________________________________________________
 
# Killing-spree
 
sv_kspree_kills
    Description: "How many kills are needed to be on a killing-spree"
        Default: 5
        Minimum: 3
        Maximum: 20
 
sv_kspree_award
    Description: "If players with more than "sv_killingspree_kills" kills get the killingspree award"
        Default: 0
        Minimum: 0
        Maximum: 1
 
sv_kspree_ifreeze
    Description: "Give the killingspree award only in iFreeze"
        Default: 1
        Minimum: 0
        Maximum: 1
 
sv_kspree_award_laser
    Description: "How many lasers will shot when you got the award"
        Default: 3
        Minimum: 1
        Maximum: 10
 
sv_kspree_award_laser_split
    Description: "Split of the lasers while having the award"
        Default: 1
        Minimum: 1
        Maximum: 10
 
sv_kspree_award_laser_firedelay
    Description: "Firedelay of the weapon when you got the award"
        Default: 100
        Minimum: 0
        Maximum: 800

Rcon-Commands

Note: The letters behind a command determines what kind of argument and how many are required. i = number, r = string.

freeze ii
    Description: Freeze a player for x seconds
        Usage: freeze <ClientID> <Time in sec>
 
unfreeze i
    Description: Unfreeze a player
        Useage: unfreeze <ClientID>
 
melt i
    Description: Melt a player (same effect like unfreeze)
        Useage: melt <ClientID>
 
mute ii
    Description: Mute a player for x sec
        Useage: mute <ClientID> <Time in sec>
 
unmuteid i
    Description: Unmutes a player by its client id
        Useage: unmute <ClientID>
 
unmuteip i
    Description: Remove a mute by its index (see "mutes")
        Useage: unmuteip <Index>
 
mutes
    Description: Show all mutes
        Useage: mutes
 
mute_spec ?i
    Description: All messages written in spectators will be redirect to teamchat for this round (Note: Can be also used as callvote)
        Useage: mute_spec <"0" or "1" or nothing>
 
stop
    Description: Pause the game
        Useage: stop
 
go ?i
    Description: Continue the game
        Useage: go <Time in sec or nothing>
 
set_name ir
    Description: Set the name of a player
        Useage: set_name <ClientID> <New Name>
 
set_clan ir
    Description: Set the clan of a player
        Useage: set_clan <ClientID> <New Clanname>
 
kill i
    Description: Kills a player
        Useage: kill <ClientID>
 
whois
    Description: Show a list of players which are currently logged in in rcon
        Useage: whois

Chat-Commands
/info
    -> Show information about this mod
/credits
    -> Show some credits...
/stats
    -> Show player statistics
        Useage: /stats <Playername> shows the stats of any other player. But you dont need to write your own name for your own statistics.
 
/sayto , /st , /pm
    -> Send a private message to a player in the server
        Useage: /sayto <Name/ID> <Message>

/ans , /r 
    -> Answer to a private message. The receiver is the player from where the last message was received or sent
        Useage: /ans <Message> 

/emote
    -> Set an emote. Available are "surprise", "blink", "happy", "pain", "angry" or "normal".
        Useage: /emote <Emotename> <Time in sec>
 
/stop
    -> Pause the game
/go
    -> Start the game
/restart
    -> Restart the game
/1on1 - /6on6
    -> Start a war and set spectator slots
/reset
    -> Reset spectator slots

Also included is an extended version of the banmasters, so you have easy control and you can ban players of all your servers.
Please note that in the default-settings I will be notified if a player on your server gets a ban. The sent information (name and ip) will be used to ban botters from a bigger amount of servers so that they can't simply change the server to continue cheating there. But there are definitely no automated bans. If you anyway dont want this, set  "sv_global_bantime" to 0 to disable the banmaster-feature. If you dont want to abandom banmasters write in the first line of your banmasters.cfg "clear_banmasters" and add your own addresses in the following lines.


Download

Current Version: 0.7.5

Download

Source at GitHub

Example Configs:
iCTF+
iFreeze+
(They are also part of the ZIP-folder)

Note: I finished the Anti-Capslock-feature with 0.7.3. It should work now for the most latin letters.

Important: In the last version of teeworlds and thus in TW+ was a critical bug, which has been fixed now. Please update the mod to 0.7.5 (current)


If you find any bugs or if you have an awesome idea just write it here or open an issue on GitHub. I'm looking forward to every comment smile
Much fun <3

2

Re: [MOD] TW+ - iFreeze and Instagib-Mod

It looks really cool. I hope you will keep it up to date and develop this mod.

3

Re: [MOD] TW+ - iFreeze and Instagib-Mod

Good job!

Did you mod? You do not have Web hosting?
You want your mod was TeeWorlds 0.6.1? Write to me!

4 (edited by szyker 2012-04-26 18:52:45)

Re: [MOD] TW+ - iFreeze and Instagib-Mod

I have problem with gametype DM+, gametype CTF+ works just fine but on 2nd server i want to setup DM+, it starts with gTDM+. I have no idea why this happens, here is my config if it will be helpful.

sv_name "Renegades Clan Server - 1vs1"
sv_port "8304"
password ""
sv_register 1
sv_max_clients "16"
sv_map "dm1"
sv_scorelimit "10"
sv_spectator_slots 14
sv_powerups 0
sv_inactivekick 0
sv_timelimit "5"
sv_gametype "DM+"
sv_warmup 10
sv_teambalance_time 0
sv_tournament_mode 1
sv_vote_forcereason 1
sv_go_time 5
sv_stopgo_feature 1
sv_xonx_feature 0
sv_war_time 10
sv_stats_outputlevel 3
sv_kspree_kills 5
sv_mute_duration 0
sv_chat_max_duplicates -1
sv_loltext_show 0
sv_motd "Welcome on Renegades clan server. Visit us on www.renegades.comlu.com"

add_vote Restart exec restart

5

Re: [MOD] TW+ - iFreeze and Instagib-Mod

Thanks for reporting!
An exclamation mark was missing smile Fixed and updated.

6

Re: [MOD] TW+ - iFreeze and Instagib-Mod

Everything work fine now, thank you for fast fix.

7

Re: [MOD] TW+ - iFreeze and Instagib-Mod

Yo tittie, why didn't you mention anything a bout your experiment tongue? I'm glad it worked out good, will test when I have more time.

8

Re: [MOD] TW+ - iFreeze and Instagib-Mod

I'm happy that you like it smile

9

Re: [MOD] TW+ - iFreeze and Instagib-Mod

big_smile

Vanilla FTW, please.

10 (edited by szyker 2012-04-30 21:58:17)

Re: [MOD] TW+ - iFreeze and Instagib-Mod

Well we are testing your mod rly hard and i think you should improve pause. The problem is that if during the pause 2 players write "go" the game will be still paused. It isn't a big problem but it would be much better to fix it, for example next go doesn't count. Also after the pause all stats in such a clients like gamer or suhi client are reseted.

11

Re: [MOD] TW+ - iFreeze and Instagib-Mod

What's the difference between iFreeze and OpenFNG mods?
iFreeze have less stuff?

Playing Teeworlds since 2011!
"I will always be topless for you"
                  - Günther Branlutte

12

Re: [MOD] TW+ - iFreeze and Instagib-Mod

Well done. The only thing I don't rly like is that you have to write a slash (/) before your command. For example: /go, /restart, /1on1 instead of go, restart, 1on1

But no problem, good job!

13 (edited by TT <3 2012-05-01 01:46:27)

Re: [MOD] TW+ - iFreeze and Instagib-Mod

Thanks for your feedback smile

@szyker

The problem is that if during the pause 2 players write "go" the game will be still paused.

Thanks, i will change it in next release

Also after the pause all stats in such a clients like gamer or suhi client are reseted

I can't reproduce it. Works for me (with sushis client pack).

@HeroiAmarelo

What's the difference between iFreeze and OpenFNG mods?
iFreeze have less stuff?

In iFreeze you dont score by throwing them into a shrine you score when all players of the opponent team are freezed. Furthermore you dont have a hammer, you melt your mates when you stand next to them. See my description above.

@Earth
There is an exception for "go", "restart" and "stop", you dont have to write these 3 commands with a slash. But it will reconsider it.

14

Re: [MOD] TW+ - iFreeze and Instagib-Mod

There is an exception for "go", "restart" and "stop", you dont have to write these 3 commands with a slash. But it will reconsider it.

Keep it like it pls.

15

Re: [MOD] TW+ - iFreeze and Instagib-Mod

Great work. I love iFreeze smile

16 (edited by Armagetron 2012-05-02 17:17:07)

Re: [MOD] TW+ - iFreeze and Instagib-Mod

Great job! How can I adjust the default laser reload time?

17 (edited by TT <3 2012-05-08 01:40:22)

Re: [MOD] TW+ - iFreeze and Instagib-Mod

szyker wrote:

Keep it like it pls.

I did, dont worry. I know that sometimes you have to write these commands fast for example when you are in the middle of a game so that there is no time to write a slash. But when you start a war with !1on1 you usually are not in a running game so there is enough time. Thats what i meant.

Armagetron wrote:

Great job! How can I adjust the default laser reload time?

sv_laser_reload_time

//
Mod has been updated.

18

Re: [MOD] TW+ - iFreeze and Instagib-Mod

Thank you TT <3 for making this, we are running these on Inspire servers now. So far they work great.

Small suggestions:
the anti-camping only in insta option does not work for me
i'd really love sv_emoticon_delay 0 it's so much more expressive wink
the emote faces are lost when you die....  sad

19

Re: [MOD] TW+ - iFreeze and Instagib-Mod

Windows download link is down. (Github: File not found)

Once in a century...

20

Re: [MOD] TW+ - iFreeze and Instagib-Mod

@Broken
Thanks. Anticamper works now correctly, also a chosen emote wont disappear now, after you die. Furthermore I forgot it to write it down: There is another chat-command called "/emote" where you can set a emote for xx seconds. I hope this will satisfy you smile

@Dark
Yea.. this Github-hosting is a bit buggy and doesnt always works fine with firefox...


Anyway.. Mod has been updated! Thanks for your help to improve TW+ big_smile

21

Re: [MOD] TW+ - iFreeze and Instagib-Mod

Is there any changelog?

22

Re: [MOD] TW+ - iFreeze and Instagib-Mod

TT <3 wrote:

@Broken
Thanks. Anticamper works now correctly, also a chosen emote wont disappear now, after you die. Furthermore I forgot it to write it down: There is another chat-command called "/emote" where you can set a emote for xx seconds. I hope this will satisfy you smile

sorry I wasn't clear — this is great, but  i mean the forced delay between emotes, without you can quickly combine emotes which i think is really funny

23

Re: [MOD] TW+ - iFreeze and Instagib-Mod

@szyker
Sure.. https://github.com/Teetime/teeworlds/commits/tw+

@Broken
I know what you mean but I wont add it because I dont see a real reason for this.

24

Re: [MOD] TW+ - iFreeze and Instagib-Mod

Okay..... one thing, your mod seems to create four folders (demos, dumps, downloadedmaps, screenshots) and this is really annoying for my particular setup, is this necessary?

25

Re: [MOD] TW+ - iFreeze and Instagib-Mod

No they are not necessary but afaik this is not caused by my mod, also the "normal" server should create these folders.