In this way, the risk of forgetting to buy backup clonks would be eliminated.
It would mainly consist of:
-Curses. A lot.
-Arguments like:
--ruining spirit of clonk
--ruining settlement scenarios
--ruining melee scenarios
---(impossibility of leaving guard behind)
--even smaller realism
-Random words
-More random words
Argh, or maybe I will comment:
This is stupid. And pointless. What would we benefit from it?
As for Peter's idea: believe me, he has some good resons to think that way (Personally I agree with the idea... mostly). Controlling several clonks in (lets say) CR was realy a pain in the neck. As long as you have no free construction/cutting trees/production jobs you can effectively control only 1 clonk (others will just have limited functionaliity or no functionality at all). You will definitely not lead several clonks into battle because you need to perform complicated maneuvers (something AI can not cope with effectively). And how are you going to organize a tough defence when your clonks are just standing around doing nothing.
We have already had a huge discussion about making more complex AI in OC (and we will not start it again here) and it ended right where it started - there is a very little something that can be done concerning several clonk behaviour. But we will definitely return to this discussion later (after the first release or two, when we at last begin to work on settlement and settlement melee scenarios).
P.S. The only (or maybe just the first) idea that comes in mind about using several clonks (which does not involves a lot of AI stuff) is to make guard cannon fire automaticaly when there is a clonk (not controlled by player) operating it.
I dislike idea of having too much clonks as well, imho 2 to 4 clonks is the best option, but not having more than 1 clonk? In races and fast-paced melees - sure.
As for AI I've got an idea, but no idea how hard it would be to implement it.
Basically you do this in steps at beggining of the game, and just update it later when terrain is modified(or will it be unnecesary?):
1) Divide map into sectors(maybe 256x256?)
2) Trace all of the terrain edges(liquids would be ommited for now)
3) Convert traced edges into fragments, optimize their amount of vertices and classify them as:
-Climbing(wall)
-Walking(floor)
-Scaling(ceiling)
4) Place a lot of waypoints on every 'path'
5) Generate paths from as many waypoints to as many waypoints as possible(including points in nearby sectors):
-Automatical connection of points of single path
-Fall path(for jumping from ceiling/wall)
-Jump path(for jumping from floor onto ceiling/wall)
6) Place a large grid of points in terrain, and then:
-Destroy points completly covered in non-diggable terrain
-Move a bit points at edge of non-diggable terrain
-Generate 'Dig' paths through diggable terrain, usually from one 'wall' or 'floor' edge to 'wall' or 'ceiling'(but also from floor to floor, if needed)
7)Destroy unused points, merge points close to each other and cull 'walk', 'climb' and 'scale' waypoints unused in digging in favor of longer single path lines
8)Check for lines/points in two sectors at once(ie.: Point perfectly at edge, line with one point in one sector and one in other) and mark them as 'portals', calculate series of waypoints from each sector entrance to each other(if possible and not blocked)
And then while running game do following:
1)In case of terrain being modified:
-try to reconnect all broken paths(with either jumping, falling and then climbing or something else if needed)
-Remove dig points, which are now on surface(or convert them into 'fall' or other points)
-Calculate new edges, points and paths in modified area(and around)
2)Give each point priority:
-Normally a path fragment gets priority based on time needed to traverse it, but there are exceptions:
-Points close to your base/territory(between your buildings) gets higher priority as it's 'safe'
-Points close to a deadly material(lava,acid,etc.) get 1/2 of priority
-Depending on current AI mode there are + or - points for paths near enemy units and buildings
-Dig paths have lowest priority, both to minimize travel time and prevent too much of waypoints updates...
3) And then use some standard, high performance algorithm for pathfinding
I guess it'd be quite hard to implement, and am not sure how good it would be, but I had this idea floating in my head for a while, so I couldn't not write it in the end :>
Perhaps we could have NPC clonks and this Navigation-Mesh system in release two? It would fit with the settlement component.
So the current focus would be rather MP melees, races/parkours, etc.
For now it's ok, I guess, but we'll need something 'more' later on.
And well, probably this pathfinding idea is not so original, but I guess it would do the job and allow clonks to navigate even quite complex maps.
Pros:
Cons:
>--ruining spirit of clonk
I always found the necessity to control multiple clonks one of the worst aspects of melees. Settlements not so much, but it was still very unnecessary.
>--ruining settlement scenarios
How?
>--ruining melee scenarios
Good Lord I hate controlling multiple clonks in melees.
>---(impossibility of leaving guard behind)
Guards were never implemented well. Any player worth his salt could easily make a guard waste all his ammo and fall into an obvious trap.
>--even smaller realism
Now this could actually be a valid argument. I always thought it was a bit strange clonks were building massive settlements and no one ever lived in them. Just an idea, but it could be possible to have NPC clonks on your team which do menial tasks (baking bread, chopping wood and bringing it to the base, eating food, farming wheat, etc.). This would likely require a better pathfinding system (perhaps recording the player's movement that he took to go from point A to B and replicating it?), and possibly some NPC only exploits (ie: clonk teleports back home if he gets stuck). If you've ever played the strategy game "Stronghold", your citizens do a lot of self management in this way.
> [...] to have NPC clonks on your team which do menial tasks [...] This would likely require a better pathfinding system [...] and possibly some NPC only exploits [...]
That's actually a nice idea, which might be worth a separate discussion.
They might be associated with (spawned in) either the home base or the production buildings, perform some of the micromanagement tasks, and e.g. get respawned automatically after some time if killed (so natural disasters or other players might kill them to hurt productivity but without distracting a player too much from his other tasks). It would give clonk settlements a lot more life, somehow I have to think of settlers2.. :)
PS: With the possible exceptions of "guard" Clonks you could order (magic?). The many single player scenarios using them have established that they are fun to fight against. Why not allow you to "decorate" your base with them?
> Building a good AI for such purposes is really hard
Yes, that's probably the main problem. It might still be an option to allow some special AI-"cheats", as Ringwaul mentioned, to get around the most difficult situations. Like teleporting if stuck or when no path is available. (if underground, perhaps an animation where the clonks digs a tunnel into the background and disappears there?). But yes, I see also problems with that.
> When in doubt I would just try to have the action in question performed automatically, without the need of a Clonk standing by
I can image that having Clonks standing and walking around would just create a nice atmosphere, even if the gameplay-aspects are (almost) the same....
>perhaps recording the player's movement that he took to go from point A to B and replicating it?
Yeah, that's a beginning.
>--ruining spirit of clonk
You always had multiple clonks in clonk, so it would be quite extreme change, and there are already things done and/or planned that change the game a lot, I think we shouldn't really go that far, so imho doing things like this, which are not 100% sure to do good is not a good idea
>--ruining settlement scenarios
Single-clonk building, hauling, no guards possible, no research/production/etc in background and so on...
>--ruining melee scenarios
That would only be for particular scenarios, in general it's not nice to go seeking for enemy base and while after get an alert that your base is under attack and being unable to protect it...
> Having a Clonk sitting around for the case they might die?
No, dying is not the only situation where you need backup. As it happens from time to time, the Clonk you primarily work with gets trapped somehow and can't get out on its own (e.g. it might have fallen down a cliff, or the cave it was in just collapsed and was flooded with water). What do you propose as a solution? A suicide button?
In case suicide is a cheap "pay 20 gold and respawn at next base" - wouldn't that actually be the more fun solution? When your other Clonk had equipment, you still get to rescue that, after all - so nothing substantial is lost. Just wondering :)
I'm somewhat torn about that. Having to (manually) rescue your clonk is good for the following reasons: It 'punishes' you for being sloppy (too careless while walking around cliffs, not building your tunnels flood-proof, etc), and it makes a clonk's life feel 'valuable'. On the other hand, rescue missions sometimes become tedious. Your productivity is down to zero while you rescue your clonk and it usually takes some time and effort. Additionally, the rescue missions are pretty unsafe as well (as you said). So, losing your rescue clonk, too, and then the next one, and so on, isn't too much fun either. Altogether, rescue missions can be a funny gameplay element, but saving one clonk by throwing more clonks at the situation doesn't feel entirely right either.
> "pay 20 gold and respawn at next base" ... When your other Clonk had equipment, you still get to rescue that
Hmm. It sounds like it's worth trying. I have two throughts about that: First, just paying some gold seems a little 'cheaty' to me, to be honest. This way, something bad happening to your clonk suddenly becomes a complete non-issue: Just restart at your base, problem solved. Second, on the other hand, the problem is moved from 'clonk lost' to 'equipment lost', so the arguments above apply again, and 'equipment rescue missions' might become tedious. This could balance one another well or not.
And I don't know about "cheaty". It's already just about playing gold, isn't it? My next idea would actually have been to give you a timed respawn in case you don't want to spend the gold (DotA-style).
1. The position of the clonk. One might be building a forward base somewhere on a sky island, the other one is shooting the construction materials up to his position with a cannon. Or, one clonk is in the base to defend it against enemies (and open the gates for friendly clonks), the other one is looting valuables on a former battlefield. Etc. pp. There are many situations where more than one clonk come in handy because of location.
2. What the clonk is carrying is defining what he is able to do, what he is: Whether he is a Bowman-Clonk, a Fighter-Clonk, a Miner-Clonk, a Construction-Clonk or an Explorer-Clonk. (Axe, shovel, hammer are now tools.) No Clonk can carry all these tools at once, but you need different tools (at different positions) for different situations quite quick. Another clonk will come in handy there. For easy recognition you can see with what the clonk is equipped just by looking at the pictures.
Besides, in most typical single-player scenarios, we actually only need the Builder-Clonk. And wasn't there something about a backpack that you could store tools in to "transform" your Clonk when need arises?
> Maybe we should decide first how settlement is supposed to work before discussing this further.
Well, no. It's the other way round. My personal design might look very different if I had to accommodate the player controlling multiple Clonks in there. Because if we decide that we want to keep it for whatever reason, I would be thinking about how we can make it a central design decision, not just something lying around as a workaround for, say, missing relaunches. Try to make it the exception to control only one Clonk at the time. Think more "Lemmings".
I'm essentially trying to establish the ground rules here. First the requirements, then the design.
How my design would look different, I can't say directly. But there are things where "and what about when there are 2 Clonks?" is just distracting, and takes away of the quality of other solutions.
For example when thinking about relaunches: How about having the last base you visit become your relaunch base automatically? Well, what if you had 2 Clonks? Would the "last" base be shared between them? Or each one have a separate relaunch point? Both would be horribly confusing. This kind of thing I would call "design smell" - it feels to me like this feature is a considerable net-loss for us.
>Isn't "we save 3 seldom-used keys, and quite a lot of overhead interface space" argument enough?
No it isn't. Currently we use 1 key, IIRC: "Next crew member". Though, probably most players will click in the hud anyway.
>For example when thinking about relaunches
True, the respawn idea is not too compatible with having more than one clonk. Probably because you suggested that feature to replace having several clonks.
Currently, to go against the problem of clonks in a trap, the last clonk is dead and one is eliminated etc. the possibility to always buy another clonk in the base from the HUD could be implemented - regardless if there is one clonk left on your team or not. (e.g. a button that is shown left or right of the clonks-display on the top which shows a clonk and coins.) This clonk will respawn in the building that has been marked as the players base.
Edit:
Don't get me wrong. I don't want to actively argue against limiting the maximum number of clonks of a player to one either in standard scenarios or even in the engine. It's just like I said: I don't see any convincing arguments yet that clearly speak for limiting the player and the scenario developer in such a strong way to go through the hassle of implementing all this and no other possible solution. The problems you posed as the definite reasons for limiting the number of clonks to one do not have to be solved like this, there are other solutions possible. This discussion started in the wrong way, first there was the suggestion to limit the number of clonks to one and then began the search for reasons why it would be better.
> Though, probably most players will click in the hud anyway.
Ugh, I certainly don't hope so.
> I don't see any convincing arguments yet that clearly speak for limiting the player and the scenario developer in such a strong way
How exactly should I limit scenario authors? They could essentially reimplement everything we do anyway :)
I'm not trying to reach some sort of technical decision - I mean, why should we remove a feature that's just lying around? - I just want to get people thinking. So scenario builders aren't going to just put multiple Clonks into their scenarios just because they haven't thought about other possibilities. And object package authors don't put too much thinking into implementing a complicated solution, knowing that it might not even be needed.
But on the other hand, I wouldn't mind much either to declare Seven Keys a pure multiplayer scenario. Or rework the arrow so it's easier to control with fewer Clonks. Or do a completely different key that becomes interesting precisely because there are less Clonks (it would make the no-placement-near-Clonks-rule more feasible again, for example).
I'll simplify the engine implementation accordingly.
> I'll simplify the engine implementation accordingly.
What exactly is there to simplify?
Again, controlling multiple clonks at the same time is one of the things I liked very much in previous Clonk titles and even though I acknowledge that it might be even more complicated with our current control concept I'd like to keep the possibility for this (like for example if we get a really smart pathfinder one day it might be possible to rely on the AI much more for common tasks than we can in CR).
I feel like this is the better solution on many fronts.
> What exactly is there to simplify?
The code one would need to read to solve bug #98 :-)
At the moment, we have two concepts: "which Clonk has the cursor" and "which Clonks are selected", and they interact in subtle ways. Dropping the second would make the engine interface a lot easier to understand. For example, when you switch through your Clonks, which one is GetCursor(,0)? The one which would be the only selected one after you pressed a movement key, or the one which would lead the selected crew if you pressed the cursor toggle key and then a movement key?
> I'd like to keep the possibility for this (like for example if we get a really smart pathfinder one day it might be possible to rely on the AI much more for common tasks than we can in CR).
Reimplementing the necessary support in the engine or script would be a lot less work than a really smart pathfinder, so when somebody does build one I think we'll find someone to implement simultaneous Clonk control again. Maybe we'll even get a better interface than C4 had :-)
Powered by mwForum 2.29.7 © 1999-2015 Markus Wichitill