Author Topic: Map Format wishlist  (Read 3531 times)

0 Members and 1 Guest are viewing this topic.

Offline L[0ne]R

  • Soldat Beta Team
  • Rainbow Warrior
  • ******
  • Posts: 2079
  • need a life. looking for donors.
Map Format wishlist
« on: December 05, 2015, 04:21:54 pm »
This is a (poorly worded and formatted) master-wishlist of map features, most of which will probably require a change in map format (big scary thing) and therefore won't happen for a while. The point of this thread is to collect and organize as many ideas as possible, to give devs a better idea of what the map format should support:

  • Multitexture support.
    Self-explanatory and long-requested feature. Ability to use multiple separate texture files in a single map, to allow for easier multitexturing. This is one of top-priority requests since it significantly bottlenecks the quality of map remakes.

  • Parallax.
    Non-colliding map elements that move faster or slower relative to the main layer, to create a parallax effect:
    http://blog.cubettech.com/wp-content/uploads/2015/01/Example-of-Parallax-Scrolling.gif

  • Layers.
    Ability to group polys, sceneries, objects and other stuff and separate them into layers for easier management. This could be a polyworks-only feature, but it's be very useful to have layers built into the map, so layer data can be preserved in a compiled map for later editing.

  • On-the-fly map editing.
    Ability to insert new objects, sceneries and prefabs mid-game via server scripts.
    Example uses: adding/removing forward spawns in Trenchwars, spawning new structures on a map, generate maps procedurally.

  • Particle Emitters.
    Points or areas defined to spawn particles, which would use scenery-gfx and user-created movement patterns.
    Example uses: custom weather, falling leaves, animated smoke and fire in maps.

  • Sound Emitters.
    Points or areas defined to play a sound, which would use sfx and user-defined playback logic (shuffle, loop, play every X seconds).
    Example uses: map ambiance, animation sound effects.

  • Custom objects.
    Right now maps only have polygons and scenery. You can use whatever texture and sceneries you want, but things like turrets, parachutes and flags are hard-coded and no custom objects can be added. I'd like to have the ability to create and add your own .po files into the map, with their own animations.
    Example uses: from something as simple as physics-based props (swaying trees, animated hanging cloth, movable crates), to interactive objects (exploding barrels, respawn checkpoints, perhaps even player- or AI-controlled vehicles).

  • Animation.
    Ability to animate polygons, sceneries and aforementioned objects. Animation would affect things like element position, scale, opacity, color and other properties (for example, polygon type). Support for multiple animations per object would be ideal.
    Example uses: moving platforms, lights that flicker on/off or change color, spikes that pop out, moving clouds, custom weather effects.

  • Scriptable events and triggers.
    Various events built into the map itself, such as spawning/changing/deleting objects, changing variables, triggering animations - all of which could be triggered manually by the player or with server scripts.
    Example uses: doors that can be opened and closed, traps that can be toggled on/off, a button that wins the round, a boogie man spawner, medkit dispenser, trenchwars checkpoints, procedurally generated maps, advanced gamemodes that dynamically change the map.

  • Combining polygon properties.
    This would allow combining multiple polygon properties to create more combinations of polygon types, which is currently much more restricted.
    Example uses: regeneration field ("regenerate" + "no-collide"), slippery hurting floor ("ice" + "lava", as absurd as it sounds), ice you can shoot through ("ice" + "no-collide"), killer energy field which dead bodies can properly fall through.

  • Map boundary.
    Map boundary would be used for manually defining the minimap area.
    Example uses: excluding irrelevant outside areas from the minimap, using map boundary to generate good map previews.

  • Forwards-compatibility.
    Ability to implement new polygon types, effects and other map-related features in the future, while maintaining compatibility without further rewrites to map format.

  • Polytype: custom gravity
    While player is in contact with gravity polygon, he would be affected by a different gravity value (specified in polygon properties).
    Example uses: space map with gravity indoors and reduced gravity outdoors; water polygons with reduced gravity.

« Last Edit: March 05, 2016, 05:23:35 pm by L[0ne]R »

Offline %%%%%%%

  • Soldier
  • **
  • Posts: 205
Re: Map Format wishlist
« Reply #1 on: December 06, 2015, 08:10:12 pm »
They all sound really good.

Maybe you should send that wishlist to Santa, you might get it in time for Christmas...


But not this Christmas.

Offline smiluu

  • Flagrunner
  • ****
  • Posts: 673
  • Put your farts in my pussy
    • LOLOKAUST MSPAINT PLEASURE POND
Re: Map Format wishlist
« Reply #2 on: December 07, 2015, 12:42:07 pm »
    • Polytype: custom gravity
    While player is in contact with gravity polygon, he would be affected by a different gravity value (specified in polygon properties).
    Example uses: space map with gravity indoors and reduced gravity outdoors; water polygons with reduced gravity.[/list]
    Alternative way to do this is to have polygons change the gravity value when you go past them. Then you would have to go through another polygon which turns it back to normal. This way you wouldn't have to cover large areas with polygons. If you spawn inside a supposedly mutated gravity area, just put gravity polys where the spawns are and then polys of normal/mutator gravity at every exit in a way that you touch the right kind of polygon last.

    • Animation.
    Ability to animate polygons, sceneries and aforementioned objects. Animation would affect things like element position, scale, opacity, color and other properties (for example, polygon type). Support for multiple animations per object would be ideal.
    Example uses: moving platforms, lights that flicker on/off or change color, spikes that pop out, moving clouds, custom weather effects.
    +1 Thi$!

    Offline DorkeyDear

    • Veteran
    • *****
    • Posts: 1507
    • I also go by Curt or menturi
    Re: Map Format wishlist
    « Reply #3 on: December 07, 2015, 07:52:47 pm »
    I brainstormed a number of ideas, not all that good :P. They aren't really fledged out.

    Replacing polygon type with properties. For example, player collision on/off, object collision on/off (distinguish kits and bullets?). Team-specific properties maybe? For example, polygon that has alpha team bullets collide but bravo team's do not, plus alpha team players do not collide but bravo team players do.

    Ability for a script to modify a map during gameplay. For example, changing colors or polygon type or properties when some action happens. A somewhat related idea is to allow embedding scripts in maps, or allow maps to use (reference) external scripts (so you can reuse the same script on multiple maps if you wish to).

    A proper way to handle different versions of the same map. I'm not exactly sure what this would look like, but it would be nice to not have two maps that have the same filename but have a bit different geometry.

    A proper way to have maps designed for particular gamemodes. A related idea is to allow gamemode-specific differences of the same map (e.g. spawn point locations in a teammatch vs. ctf gamemode). Not sure if it is a good idea, but the ctf_ (and other) prefixes imply that a map is meant for only ctf even though it may be designed for more than just ctf, so maybe get rid of prefixes? It would be nice to have this flexible to allow for custom gamemodes.

    A method of scenery and polygon "depth" so you can layer things on top of each other in any order you want. A related idea is to have layers, which is really just a group of things.

    Backwards and forward compatibility. This would allow for (1) being able to play on a map designed for a newer version of Soldat using an older version, and (2) being able to play an older map on a newer version of Soldat. Make the format easily extendable so that future features not yet even thought of could easily be added if desired.

    Polygon edge customization: different edge types, edge colors, gradients maybe. This can be applied to each individual polygon.

    A way to avoid polybugs in the future?

    Allow for background images, or different gradient directions, or more colors in the gradient. A related idea is to allow for dynamic backgrounds, like clouds that move across the screen or something.

    Have rain or other weather not go through polygons if the map designer wants it that way. Include other types of dynamic stuff like fog. Could even have it depend on location, so it is snowing up in a mountain but not on the bottom where it is raining.

    Have the map specify a team color (this includes text color for the team, not just shirt color). Custom team colors would be nice. More generally, a map could specify other resources like specific gosteks for a team.

    Allow the map to store "residual" information from the map editor or map maker. This could be something like the screen location the last time the map was saved.

    Offline homerofgods

    • Soldat Beta Team
    • Rainbow Warrior
    • ******
    • Posts: 2029
    • We can do better!
    Re: Map Format wishlist
    « Reply #4 on: December 08, 2015, 07:21:06 am »
    This has been mentioned before:

    Music boxes: Music is louder the nearer you are the box, adjustable range