currently you need 2 tile wide walls to prevent interlopers into your vehicle, because of how the vehicle turning system works. For a relatively simple fix, prevent movement and attack into an [internal] tile without first entering an [external] tile, this could be automatically determined behind the scenes during vehicle creation. so if % is ext. and # int.
%%% %%%
%#% %#% # stays inaccessible because it is not a valid, walkable location, you must be in an external tile to access it
%#% %#%
%%% %%%
revision: external would have to be decidable out of construction on vehicle damage.
Nice idea but how do you account for damage (EG a player-seeking zombear missile bores through your military plating, heavy duty wall to rip out your innards while you sleep)
the internal tiles, are simply inaccessible unless you go through the externals, so you can simply use the AI behavior for going around things they can’t bash through to have them go through the external tile instead. may require a small set of AI tweaks.
also, ranged attacks are a bit of a conundrum, but that isn’t as important or as game-maiming as monsters climbing through a glitch in the wall while you drive.
There is already an “in” and “out” concept for vehicles, to decide if you get rained on or not, and which which seems to update dynamically when a vehicle takes damage or doors are opened.
Wouldn’t that serve eminently for this otherwise elegant suggestion? Admittedly, you would then be vulnerable in a vehicle that has solid walls but no roof, but those should be fairly rare.
The problem with using in vs out is that it won’t work if you’re in an open-topped vehicle, even though it should work the same.
Calculating inside vs outside on the canonical representation of the vehicle, that might actually work…
I don’t think it’ll be all that simple to make pathing work with that, but it might work.
Use the current in/out for proof of concept, and if it works well, implement a proper internal/external?
The AI changes would be 100X harder to implement than the in-/out thing, so there’s no point.
Fair enough. It seems really really simple when you have no idea what the code looks like. =)
one question I have is: what causes a creature to go around a tile to begin with? is it hard coded to tile ID, like for concrete wall…? but do hulks break those?
If the move_cost entry of the terrain/furniture is 0, the square is impassable. Same for vehicle parts with the OBSTACLE flag.
Hulks have the DESTROYS flags which causes them to ignore this and simply go wherever they want.
which means that a temporarily applied move cost of 0 would not work for hulks, definitely a bit of a hack-in solution.
The point of DESTROYS is that they smash through obstacles. So no, you really can’t block a Hulk, and that’s intentional. Could dig a moat or something, but Hulks beat walls, by design.
If your vehicle had no roof wouldn’t things be able to jump in and get you?
It’s not an oversight, it’s a feature!
(because let’s face it, if you haven’t built roofing on your vehicle you haven’t made 3 meter tall walls either.)
[quote=“gtaguy, post:13, topic:5732”]If your vehicle had no roof wouldn’t things be able to jump in and get you?
It’s not an oversight, it’s a feature!
(because let’s face it, if you haven’t built roofing on your vehicle you haven’t made 3 meter tall walls either.)[/quote]
That was pretty much my thinking as well. The problem is that a wall is impassable when the vehicle is straight, but becomes “climbable” when the vehicle is gay turned.
cougars or jumping spiders theoretically could jump in with no roof, but that is regardless of the disconnecting vehicle walls issue
the hulk thing makes sense for walls, but not for unwalkable tiles… could those tiles become flagged as empty space when pathing from outside a vehicle?
There is still the other solution to this problem… that would generate large volumes of hate should I even mention it, even if it does make sense - effect wise.