tsunamayo / Starship-EVO

Welcome to Starship EVO bug tracking repo !
114 stars 17 forks source link

[Survival] [Suggestion] Building Blueprints in Survival #5911

Open Dwarf-LordPangolin opened 1 month ago

Dwarf-LordPangolin commented 1 month ago

Hello! I'm working through the intended gameplay loop for Second Impact, but one thing stood out to me pretty quickly, and is significant enough that I felt it warranted its own post.

Most if not all players that I know like to design their Survival stuff in Creative; they use Creative as a design tool, and actually play with it in Survival (sort of like sitting down with LEGO at your desk to design it, then playing with it on the floor). Designs that have had a lot of thought put into them tend to work better, and look better, than designs made on the spur of the moment, and players prefer them. There's also a large portion of players that don't design their own survival stuff, but like to use things designed by others. Because of this, there needs to be a way of letting the player build blueprinted designs in Survival from the beginning.

A simple method would be:

  1. Let the player select their blueprint from the Starter Block.
  2. A holographic version of the ship would appear, similar to how destroyed blocks look when using the Repair Tool.
  3. Building each block would require the player to have those blocks in their inventory. They could do this with the Repair Tool, or a dedicated Build Tool.

I searched and couldn't find anything, so apologies if this has already come up.

We don't need this feature yet, and it would probably be a mistake to add it to Survival Testing now, because you want people using the Survival Building tools as much as possible to make sure there aren't any bugs with them. But it is a feature that I think the game will need eventually; Space Engineers didn't initially allow blueprints in Survival, but the response from players requesting it was overwhelming.

BigBadKangaroo commented 1 month ago

This is something that was going through my mind aswell, and I don't think I can describe it any better than this!

I was thinking on posting a concept for a "3D Ship Printer" aswell. Given that I would love to see some of my ships I have already build (and put quite a lot of hours and problem-solving in) in a survival world without having to rebuild them brick by brick.

Dwarf-LordPangolin commented 1 month ago

Oh yeah, some kind of system for manufacturing ships that isn't by hand is a must-have as well, 100%.

ProPeach commented 1 month ago

For sure, as you say this was a widely appreciated feature in Space Engineers - in sevo where you can spend even more time on a ship, it's doubly important! I had two ideas for an implementation, they could work together as "tiers" or be exclusive.

The Shipyard option - Similar to @BigBadKangaroo's comment, where you select your bp in the menu of a Shipyard type brick, then feed it either money or the resouces required for the ship. The bp is then built over time, bonus points if it has a cool visual like a 3D printer, or even the old drones helping ;) There could be some integration with the NPC stations here, with the player having to travel to larger stations to get their larger ships built perhaps, or needing some reputation with a faction.

The Portable Drone option - This could be an early game option too, either a backpack or a smallish brick that serves as a port for the building drones. You could instruct them to build a bp nearby, placing the bp a bit like the copy paste tool perhaps. Maybe this could have a size limit, say a 30m cube or so. I got the idea partially from Factorio which has Construction Drones pop out of the players backpack to help build/remove/repair things fff-92-personal-roboport

tsunamayo commented 1 month ago

Sorry I am afk lately, but in the meantime here is a discussion on that topic I made a while ago, in the optic of survival* #5670 Yeah drone I want to do one day, but something you can code with a gambit system similar to FF12 (so very simple order list).

tsunamayo commented 1 month ago

So I was more going for the drydock option. So you either use a npc station, or you make your own on your base. In term of style I wanted that moving force field look, with the ship being 3D printing like for the assembler. I will do something so you can sync up a child entity so you can move it at same time as the field if you want to add a personal touch to it (not mandatory).

The questions still open are:

1)What can we spawn:

2) Cost and logistic of spawning

Cheers

BigBadKangaroo commented 1 month ago

So I was more going for the drydock option. So you either use a npc station, or you make your own on your base. In term of style I wanted that moving force field look, with the ship being 3D printing like for the assembler. I will do something so you can sync up a child entity so you can move it at same time as the field if you want to add a personal touch to it (not mandatory).

The questions still open are:

1)What can we spawn:

* New blueprint at a cost.

* Unspawned ship at no cost (beside power)

* not sure yet: respawn an already spawned ship: that would first unspawn it, and then respawn it at the drydock. This is for player that loose their ship somewhere, so exploration is less punishing. I get a lot of "Ohh I lost my ship" from newcomers. Maybe make it a difficulty setting.

2. Cost and logistic of spawning

* At a station that could simply be cash

* At base we would need resources: the question is do we required each and every bricks? That might be way too painful, so I was thinking of simply requiring the base material, ie the drydock would operate as a super assembler.

Cheers

Hi there,

I really like the idea of a 3D printer with that force field look.

To 1.) -Spawning in a BP at a cost is pretty self-explanatory. -Unspawning a ship at no cost (except energy) sounds good as well. -Respawning a ship sounds like a useful feature as well. I personally don't really mind it, but I can see that newcommers would like something like this. -I think an additional option would be useful: "disassemble". Let's say we used a ship and don't need it anymore (i.e. first starter ship) and now we can get all the needed resources back.

To 2.) -Using cash for station based spawning sounds good. However, how does a ships cost will be calculated then? Just the price for the materials needed? Will it be based on size / brick count? -I think having to build each brick beforehand is just not fun at all. This would make the ship spawning process way to complex and time consuming. Having the drydock at your base needing the raw materials (Iron ingots etc.) sounds like the way to go for this. This requires the player to gather the resources needed for the ship and creates a gameplay loop. I think it would be good as well if the 3D printer block needs a lot of energy to be used. I can imagine this being a key feature in every players base, so having large storage containers for all the resources and an sufficient amount of energy production would be needed. That way the player can choose to either build their own ship or to gather up all the needed infrastructure and resources to print any BP they want, making this thing a mid- to long term goal.

Crimson-Artist commented 1 month ago

@tsunamayo How are we going to spawn ground bases/space stations? You can't really build a drydock just to spawn a planetary base. I think @Dwarf-LordPangolin method is perfect for this. I think this method of spawning blueprints should always be available and the drydock option should be an upgrade.

The question of resources requirement can be complicated but I think only requiring raw resources might undermine the manufacturing process. What's the point of turning ingots into intermediate components then turning those into full blocks if spawning blueprints just needs ingots? by mid to late game most players will only be spawning in blueprints so at that point we will only need smelters is that how it should go?

In Empyrion, the blueprint spawning system is time based. The time it takes to spawn a blueprint will decreased depending on the complexity of the ingredients added. Raw ingots is the most basic resource you can use and if you only use them they will not decrease the timer. Intermediates components decrease it roughly by half and if you provide all the required full blocks the blueprint will spawn instantly. This system gives you choices while rewarding you for increasing production. I think this system could be applied to drydocks while LordPangolin's system may only require full blocks since we would be building them on the spot. You either incur high production costs to build something yourself or pay NPCs for the convenience of spawning blueprints instantly.

ProPeach commented 1 month ago

Sounds good!

Dismantling to refund the bricks would be great yeah, sounds like that's pretty much what you mean by "unspawning"? Got to get used to survival lingo lol.

Respawning - This would be a nice fallback, although I feel like the "I lost my ship" scenarios can be reduced in the first place. The most common ways I see people lose ships is getting out of them during Lightcruise or otherwise flying very fast which seems solvable by just not allowing them to exit. Now we have the Antennas, you could give the player a HUD icon for their ship when they're on foot which would help too. As an aside I think for role playing the scrappers guild retrieiving your lost ship fits better, but of course the result is the same.

Cost and Crafting- I agree that requiring all blocks to be present in cargo to build the ship would be a chore, but I also agree that making the Shipyard a "super assembler" type brick, able to assemble bricks from ingots is also skipping a lot of industrial gameplay. I think a good solution would be enabling the Shipyard to command Assemblers in its cargo network to work for it, so they can queue up and create the missing bricks from ingots. That way the player still has to create a functioning cargo/processing system, and they can adjust the amount of Assemblers depending on their need. It doesn't take away the job of the Assembler, it makes them more important

Dwarf-LordPangolin commented 1 month ago

So I was more going for the drydock option. So you either use a npc station, or you make your own on your base. In term of style I wanted that moving force field look, with the ship being 3D printing like for the assembler. I will do something so you can sync up a child entity so you can move it at same time as the field if you want to add a personal touch to it (not mandatory).

So, I am a huge fan of players being able to build their own Drydocks. I love them in sci-fi, and I actually have a couple spacedock ambience tracks I listen to sometimes when building in-game. And that 3D printing force field concept, especially with the option to sync child entities to it, sounds amazing. I can't wait to see this in action.

However, that's not the stage of gameplay I was thinking about. What I'm thinking about is basically the earliest possible stage of gameplay: you just started the game, salvaged some wreckage, you've built the crafting bench and the crucible, and you haven't built anything else at all yet.

Even that early, players will very strongly want to be able to build basic blueprinted designs. They'll have a pre-designed starter survival base already planned out with the basics, they'll have their preferred hovercraft already designed, and if they have to manually build those things each time they play, it will be very frustrating.

And as @Crimson-Artist points out, the Drydock won't work for bases -- unless I'm missing something about it. People will have prefab buildings they'll want to place; they'll have their preferred solar panel array, refinery building, assembler building, hangar/landing pad, etc. And usually, they'll want these to be part of the same entity, so power and inventory can be shared easily between all segments of the base.

Being able to manually project and build a blueprint would not replace the Drydock concept at all. Practically nobody wants to manually build even small creations by hand; in Space Engineers, whenever I could automate construction I would, even for very small things.

But in the same way, there were always cases where automating it wasn't feasible, and in those cases whenever I could project a blueprint for something I would, because it removed a lot of the frustration of either trying to remember how to build it manually, or just slapping something improvised together.

Because of this, during the early-game period where I'm assuming the player won't have built a Drydock yet, it would be helpful to have a means of making small blueprinted designs.

Dwarf-LordPangolin commented 1 month ago

Regarding the topic of how spawning blueprints would work:

The questions still open are:

1)What can we spawn:

  • New blueprint at a cost.

Straightforward, makes sense.

  • Unspawned ship at no cost (beside power)

I'm not quite sure I'm understanding what this means, but it sounds like you're referring to something where the material cost has already been "paid" by the player; in which case it also makes sense that you wouldn't need the resources to build it again when you've already forked them over.

  • not sure yet: respawn an already spawned ship: that would first unspawn it, and then respawn it at the drydock. This is for player that loose their ship somewhere, so exploration is less punishing. I get a lot of "Ohh I lost my ship" from newcomers. Maybe make it a difficulty setting.

I agree that being able to respawn things would reduce frustration. This is an unusually large game, and it's definitely very easy to lose your ship. I agree with ProPeach that making it harder to lose a ship in the first place would help a lot, and that paying a scrappers guild would be a more immersive way of achieving this, but the specifics are not that important.

  1. Cost and logistic of spawning
    • At a station that could simply be cash

That sounds good! It also gives the player another reason to engage in the game's economy.

  • At base we would need resources: the question is do we required each and every bricks? That might be way too painful, so I was thinking of simply requiring the base material, ie the drydock would operate as a super assembler.

I'm a little torn, because while I agree that letting the Drydock double as an assembler would be very convenient, both Crimson-Artist and ProPeach are correct that bypassing Assemblers would probably be a mistake. Letting the Drydock send them requests would be a must, and it might be a good idea for end-game to make a Large Assembler that can produce things more quickly or in bulk, but regardless I feel the Assembler shouldn't get left out of the shipbuilding gameplay element.