Parkour Mode
#1
Hi all

Please see this feature request regarding an official Parkour Mode for AC:

https://github.com/assaultcube/AC/issues/258

What are your thoughts?

Please post your comments in this thread and not on github.

Thank you for your feedback in advance.
#2
If u want to make it looking decently i think teleports, jump-pads and death-clips may be added back from cube1, it will make maps in that mode way more beautiful, since mappers wont have to deal with traps or back-roads if u fail ur run. If u played cube1, u probably remember the official parkour map, something in that way gonna be awesome imho (plus it wont take much time to copy/paste code, and allow maps with suchs things only in that mode)
Thanks given by:
#3
I think that'd be fun, also can help people practice their movements I guess!
Thanks given by:
#4
Seems nice. It would really bring back like minecraft vibes and I personally enjoy jumping on blocks. Definitely consider adding it i'd like it
Thanks given by:
#5
F1
Thanks given by:
#6
This is a great idea! The specification on GitHub is a good start.

Good points:

  - Clear distinction between gema and normal modes - means less confusion/problems for new players.

  - Easy accessibility - currently, most gema servers aren't listed on the MS (because of modifications) making them hard to find.

  - Dedicated gema settings (no damage etc.)

Questions:

  - If hax-jumps are removed from the game :( will it also be removed from gema servers?

  - If there are future changes to game physics, will gema be exempted?

  - Will there be separate rules regarding server modifications? For example: auto flag return, different respawn logic etc. Will these be allowed?
Thanks given by: Gazda
#7
> If hax-jumps are removed from the game :( will it also be removed from gema servers?

If this would be the final decision, then yes.

> If there are future changes to game physics, will gema be exempted?

I can not speak on behalf of future ac development teams. It is not always easy to keep "glitches" when the code base is generally being overhauled/refactored/improved.

> Will there be separate rules regarding server modifications? For example: auto flag return, different respawn logic etc. Will these be allowed?

There should be no additional/modified gameplay logic in the servers. The proper way would be to extend the Parkour mode in future AC releases.
Thanks given by: |HEAD|ShtMeShtU
#8
You guys forgot to mention the feature about shooting through mapmodels/clips:
https://github.com/assaultcube/AC/commit...9801d1a702

Basically in some modern gema maps if there is a tunnel or section blocked off by a clip or platform you are able to nade crouch your way through that barrier once the nade explodes above you and pushes you through to the other side.

Also, I noticed this in the github issue:
Quote:[*]The server browser will have a switch or radio buttons with two options: "game servers" and "parkour servers"
  • The default selection is "game servers", the selection is reset to default whenever the game is restarted
  • If "parkour servers" is selected, the list will show all servers that have a server description starting with "[Parkour]"
    If "game servers" is selected, the list will show all servers except the ones above
[*]The masterserver will not check map restrictions for servers where the server description starts with "[Parkour]".
  • Parkour servers must only allow for parkour mode - other game modes are not allowed. Abuse may result in delisting.
[*]
If you are willing to do this for gema then why not simplify these filters/section by just having 2 different ones. A possible rule of distinction for official servers would be to disable map uploads by non-admin players. You could have one section for official maps/modes/everything officially supported by the competitive community (players that do clan matches/inters), and then another section for custom maps/modes(gema) that don't have any map restrictions and retain backwards compatibility with old maps/map formats?
[*]
The reason I'm suggesting this path as a solution is mainly because of everything said in this thread:
https://forum.cubers.net/thread-8875.html
If you read through it you'll see that its obvious that the more competitive part of the community doesn't not want to see custom maps or so called crap maps on the server list. There are also a few references to past attempts to bring attention to gema and custom map restriction related issues that were always ignored by the dev team.

Earlier I mentioned backwards compatibility why? As far as I understood from Stef was that a new entity type was being brought into ac which for some reason requires for the entity scaling code to be changed via this commit:
https://github.com/assaultcube/AC/commit...7c27b5ae16
[*]
Here you'll see the result of this and how it was treated:
https://github.com/assaultcube/AC/issues/174
[*]I can show you another example with a classic map ac_magic-school.

before:
[Image: 8IiRBJS.png]

[*]after:
[Image: R38k25I.png]

The screenshots are from the current ac1.3 alpha btw and I don't remember anyone ever voting on this or asking for this to be implemented. I can guarantee you that this entity scaling change will brake a lot of tall maps including gema maps if it is pushed out for release the way it is now and it will require people to go through another cycle of manually fixing maps again.
Thanks given by:
#9
Quote:If you are willing to do this for gema then why not simplify these filters/section by just having 2 different ones. A possible rule of distinction for official servers would be to disable map uploads by non-admin players. You could have one section for official maps/modes/everything officially supported by the competitive community (players that do clan matches/inters), and then another section for custom maps/modes(gema) that don't have any map restrictions and retain backwards compatibility with old maps/map formats?

First of all, thanks for your feedback. My opinion is as follows:
- As far as I know it has been discovered that map restrictions are mostly or completely gone in v1.3. 
- Another section that allows *any game mode* would be an extreme move. To guarantee a consistent experience for users the game logic should be governed by the game and not by the server hoster. I am aware that there are games that do have a different philosophy in this regard.
- Generally speaking retaining backward compatibility with maps should be supported as far as geometry is concerned. Backward compatibility regarding glitches in physics are typically not easy to retain if the code base is improved/refactored.

Quote:The reason I'm suggesting this path as a solution is mainly because of everything said in this thread:
https://forum.cubers.net/thread-8875.html
If you read through it you'll see that its obvious that the more competitive part of the community doesn't not want to see custom maps or so called crap maps on the server list. There are also a few references to past attempts to bring attention to gema and custom map restriction related issues that were always ignored by the dev team.

I see that the thread is eleven years old. I can not tell if those positions are still held by a relevant portion of the community today. If we review the the reactions in our own thread here the feedback seems to be rather positive towards rehabilitating gema into a Parkour mode.

Quote:The screenshots are from the current ac1.3 alpha btw and I don't remember anyone ever voting on this or asking for this to be implemented. I can guarantee you that this entity scaling change will brake a lot of tall maps including gema maps if it is pushed out for release the way it is now and it will require people to go through another cycle of manually fixing maps again.

If I understand you correctly there is a problem related to mapmodels when converting maps to the new format. Could you please create a github issue for this so that we can analyse this further? Thank you very much.
Thanks given by:
#10
(10 May 21, 01:38PM)driAn Wrote: I see that the thread is eleven years old. I can not tell if those positions are still held by a relevant portion of the community today. If we review the the reactions in our own thread here the feedback seems to be rather positive towards rehabilitating gema into a Parkour mode.

If you look closely you will see that its from 2017 (around a few months before stef departed the dev team) and not when i joined the forums in 2010. As far as I know it is the current view on creative and gema maps hence why you don't see many custom or gema maps being played in public anymore. Also it's apparently still enforced as this thread suggests: https://forum.cubers.net/thread-2677.html

(10 May 21, 01:38PM)driAn Wrote: If I understand you correctly there is a problem related to mapmodels when converting maps to the new format. Could you please create a github issue for this so that we can analyse this further? Thank you very much.

Will do this in the next day or so, have a few other things i want to bring up as issues on github aswell.
Thanks given by:
#11
I've begun implementing a parkour gamemode - currently separated in it's own branch "parkour" on the git tree.
There are still many things to do until it is ready for multiplayer; and we may even do without the currently implemented forced "[PARKOUR]" prefix to the server description. It's Work-In-Progress!

The big changes are to playerstarts, water and the use of triggers:
  - spawn points can be safe places/save states: if you reach a safe-place trigger you will respawn at the linked playerstart
  - the waterlevel is now the level you die at; a slightly reddish tint to the liquid and the message "you melted away" make the pits in your maps a deadly trial.
  - triggers are used for setting the next safe place, for awarding points and declaring you've reached the finish

I've also implemented a trigger for displaying text but that will need to be changed since the required ALIAS command is not deemed safe for map configs; but if this feature isn't really required I'd rather scrap it than bloat the code and future map(+config) files with possibly the entire text of "War & Peace" ;-P
Is there any aspect of gema I'm missing that should be considered and made canon through an implementation in the engine?
Thanks given by:
#12
Thanks to Mr. Floppy, who has given me some initial feedback!
He has suggested the "goal" trigger (reached the finish) should give you a set of options: restart your run or switch to chasing the worst (or the best). He also said there should be a timer measuring how long it took from start to finish.
I'll be working those in as soon as I find time to continue working on this branch - I would appreciate more comments, opinions and ideas.

Mr. Floppy wanted me to "keep things open", which I'm all for - but programming always means laying down some rules. For instance, the way I've currently implemented the waypoint/safe-place mechanism means: if you have reached the trigger "safe-place #3" that means you will always respawn at the playerstart tagged as safe-place #3 (value 3 in attribute #1). If you walk over a trigger with "safe-place #2" set you will still have your safe-place be #3 .. you won't be downgrade back to #2. I felt this to be what people would expect, but if mappers wanted it differently - most things can be made possible in the code.

There is also a secondary parkour mode I've not put any proper work into yet, it's just sitting there behaving just the same. So currently the names are NORMPARK and FREEPARK and my idea was that it might be a desirable setting to have no weapons damage - you will still always die in any area covered with "water" (rather: lava/slime/acid). But either that mode becomes "free" in the sense that every safe-place trigger sets your next playerstart regardless of any sort order .. or we rename it to match any new purpose we want to give it.

What are the needs gema games want?
Thanks given by:
#13
Safe-points:
This could be quite useful, especially for long maps. However, players should have the option to spawn from the beginning of the map. It would be extremely frustrating to be forced to complete the map first.

Questions: Do you respawn with 100% health and ammo? If so, players who complete the map in one go would be disadvantaged. Perhaps players should receive a time penalty on each respawn?
If players respawn without their grenades, players might not be able to progress (if a nade jump is required and nades are no longer accessible)


Deadly-water:
Interesting concept, but there are some gema maps that contain underwater sections, so mappers should be able to disable this effect.


Map completion (goal trigger):
My understanding is that instead of scoring with the flags, players just pass the 'goal' trigger. This is great for short maps, as players don't have to wait for each other to score.

Potential problems: Will the several thousand gema maps need to be manually edited? This would take a very long time.
All gema maps have been designed to accommodate the two flags, so having just one 'goal' trigger will leave odd looking redundancies and potentially less obstacles.

Would it be easier to have the trigger be simply scoring the flags?


Other gema needs:
1. No weapon damage
2. Individual pickup respawns for each player (i.e. others can't steal your grenades/ammo boxes etc)
3. Players being able to pass through other players
Thanks given by:
#14
Interesting – this is my first useful information on what GEMA actually entails; back in the day (~=2009) I kept asking what GEMA even means, never got any real answer - everybody (that I heard) was just convinced that it was ruining the intention of the game.
During some idle chatting with driAn (2021) I got the impression GEMA is probably somewhat like what I have gotten to know as PARKOUR. Said I could take a crack at it and thus the branch was created. When I came by the GEMA discord you promised me to post on the forum; now that you've delivered - thanks! - we can get this process rolling!

Regarding Safe/Save-Points: having a command that resets your safety-counter is no problem - think
/setsafe 0
and then
/suicide
.. the setsafe wouldn't allow to set it higher than it currently is, we could add a memory of highest counter reached then you could .. I dunno .. fall back to "help a friend" (??) and then reset yourself back to the progress level you've reached yourself and continue along the map. We should be clear about why someone would want to reset their safe-counter .. maybe suicide isn't the right method - you'd lose a frag counter each time .. so: why would one fall back on the progress already made?

Regarding spawnstate (nades): I haven't changed anything regarding spawnstate yet, in some videos I saw rooms filled with all sorts of pickups - for one thing we could make pickups permanent in the gema and parkour modes. Maybe clever use of entity attributes could allow us to provide individualised spawnstates .. per map or per spawn .. I'm thinking aloud here, not a clear plan in my mind, just ideas.

Regarding deadly-water: I saw some pits in some gema videos, thought this could make them be actually dangerous; the AC engine won't let us have both kinds in one map, but a flag in the map header could be set to toggle water to be deadly or regular, sure!

Regarding Goal: no waiting, no. the current parkour idea is: you spawn at one place, make your way over the obstacles/traps which gives you points at certain places and sometimes even saves a safe-place you've reached. You reach the goal: The End. (and..the time you've taken is output on the console). The scoring with flags approach is a repeat-run thing, yes?

Regarding previous GEMA maps: the parkour entity "trigger" was previously unused, it is a relic from the time of single-player Cube maps and was kept in during the development of the bot path-finding; making use of these mechanics would require new maps. As far as I know the GEMA community is currently using regular clients and servers - or, rather: at least one modified server; whatever those server modifications are/do would need to be implemented into the source of an upcoming release, then those maps would work as they always did; new maps could make use of the triggers if they want. And whatever we can come up with :-)

Regarding other GEMA needs:
1) no weapon damage – yeah, I thought so; that's not really difficult, but to be sure: explosions are still meant to give you a push!
2) perma-pickups .. that's easy
3) immaterial players .. should be easy enough
Thanks given by:
#15
Quote:I kept asking what GEMA even means, never got any real answer - everybody (that I heard) was just convinced that it was ruining the intention of the game.
The simplest definition is: reach the end as fast as possible. Often we will repeat the same map over and over. Servers such as the former Gema Central had both map leaderboards and a global leaderboard. Map leaderboards show the top 10 or so fastest players on the current map. Global leaderboards show player ranks (based on the number of completed maps and the rank on each of those maps).



Quote:maybe suicide isn't the right method
Usually we use something along the lines of this:

bind 5 [if (= (curteam) 0 ) [ tt = CLA] [ tt = RVSF] ; spectate ; sleep 500 [team $tt ; attack ]]
So no need to wait 5 seconds to respawn. Some servers have a !reset function.


Quote:you could .. I dunno .. fall back to "help a friend" (??)  ...  why would one fall back on the progress already made?
I don't really see a need of returning to an earlier spawn-point. Helping a friend (aka 'boosting') is usually frowned upon.


Quote:we could make pickups permanent in the gema and parkour modes. Maybe clever use of entity attributes could allow us to provide individualised spawnstates
Individualised spawn-states would be the best option (there are some gema servers that already have something like this implemented). Permanent pickups could also work, although it would change the dynamics of some maps. Probably best to see what other gema players think of this.

Quote:The scoring with flags approach is a repeat-run thing, yes?
Scoring means you have completed the map. The time taken to complete a map is the time from spawning to scoring.

Quote:explosions are still meant to give you a push
Yes! No damage to others, but still able to damage yourself.
Thanks given by:
#16
So, if I understand it correctly: GEMA maps have one spawn/playerstart only and the two opposing CTF flags, one near the start the other marks the finish. Once you've reached the finish you trigger a respawn to start again.
Aside from extra niceness stuff (like: server changes regarding pickups or "reset"-commands) - that's the basics, yes?
Thanks given by:
#17
Gema maps can have multiple spawn points, but usually around the same area. The CTF flags are both at the end of the map. Some maps are a bit different, but this is the general idea.

Some examples:
https://www.youtube.com/watch?v=YcbjK1naDZ4
https://www.youtube.com/watch?v=yLF0IMg4ChU
https://www.youtube.com/watch?v=vC5jCL1lwng

[Image: OiMmzvg.png]

[Image: c058aNT.png]
Thanks given by:
#18
Ah! Thank you! That makes it very clear .. and may I say: impressive skillz on display there :-)

So, a gema:gema mode wouldn't really need to be anything more than a rule-copy of CTF; but then we can allow stuff in that mode/those modes like the different ways to deal with damage or measuring time or having a bindable command to restart your run.
I'll take a stab at that when I can; currently I'm really all tied up with fixing release-critical stuff. But this will be a dangling carrot during that work!
Thanks given by:
#19
Some of my thoughts are:

- Flags should be "permanent" like you intend to do with pickups. That way, multiple instances of flags can exist. This is important for when multiple people reach the end at the same time. People would have to wait one by one to finish.

- It would be nice to make teams and flags "neutral". For example in |HEAD|ShtMeShtU's first picture, you can see it's better to be on CLA. Some maps take this further and you can't score unless you are on a specific team, because there's no way to go return. Making it neutral just gets rid of needing to know which team you need to be on.

- *Hiding players would be helpful. If it's really crowded, it can be difficult concentrating on your run. Maybe completely hiding them by, like with clientside spectator ghosts, or decreasing the transparency of players, like when players lag out.

*Edit: A command to choose to hide/make transparent
Thanks given by:
#20
I can't give a gema players perspective but I think it is important to note that we shouldn't limit ourselves by the current maps out there. If we are making an officially supported gema mode we should do it correctly which might mean each map has to be tweaked and fixed to used in the official gema mode. AC has never had a lack of map makers so I'm not worried about lack of maps to play on. The existing maps will likely be able to be converted and improved relatively easily. If a gema map is worth playing, players will take on the conversion. We likely don't need to convert the whole repertoire.


On a similar note, this likely means that at some point we will have to create some official maps to play gema on.
Thanks given by: flowtron This user is a dev/forum admin
#21
(23 Jun 21, 07:59AM)Ronald_Reagan Wrote: On a similar note, this likely means that at some point we will have to create some official maps to play gema on.

Just thought of this but if there are official gema maps it might be nice to have a 'leaderboard' for quickest time to finish the map/score the flag? I know sauer has similar things with flagrun records
Thanks given by:
#22
Quote:So, a gema:gema mode wouldn't really need to be anything more than a rule-copy of CTF; but then we can allow stuff in that mode/those modes like the different ways to deal with damage or measuring time or having a bindable command to restart your run.
Yeah, basically :)


Quote:- Flags should be "permanent" like you intend to do with pickups. That way, multiple instances of flags can exist. This is important for when multiple people reach the end at the same time. People would have to wait one by one to finish.

- It would be nice to make teams and flags "neutral". For example in |HEAD|ShtMeShtU's first picture, you can see it's better to be on CLA. Some maps take this further and you can't score unless you are on a specific team, because there's no way to go return. Making it neutral just gets rid of needing to know which team you need to be on.
Seconded. Also, a way to extend time would be nice - some maps take a long time to complete.


Quote:If we are making an officially supported gema mode we should do it correctly which might mean each map has to be tweaked and fixed to used in the official gema mode.
By this do you mean some maps will be chosen (then tweaked to an AC standard) to become official gema maps?
Thanks given by:
#23
(25 Jun 21, 01:36PM)|HEAD|ShtMeShtU Wrote:
Quote:If we are making an officially supported gema mode we should do it correctly which might mean each map has to be tweaked and fixed to used in the official gema mode.
By this do you mean some maps will be chosen (then tweaked to an AC standard) to become official gema maps?

Not quite. I mean that gema maps may not be compatible with the gema game mode when it is released.
Thanks given by: