Starting on a small isle?? Read this before you post!

We are aware of them, but they have low priority. We have more important things to do. They go here in order not to take space in the main bug thread list.
roothorick
Long Handed Inserter
Long Handed Inserter
Posts: 92
Joined: Mon Aug 11, 2014 5:22 am
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by roothorick »

therapist wrote:I understand that the engine can't just check 10 tiles away, but is it possible to use the bugs pathfinding AI to fix this problem? Run a sort of "ghost bug" check upon map generation to see if the nearest bug nest can reach the player and maybe the second and third nearest nests as well? If these nests can't be reached, or rather, these nests cannot properly path to the player, this could cause the game to display the "You have landed quite unfortunate, doomed on an island. Regenerate map Y/N?" message that others have suggested before, or the game could move the player to the nearest shore and run the check again.

Maybe the pathfinding AI isn't developed enough to exhibit this function yet, and the solution will be fixed in map generation, but as others have argued generating maps where the player is on an island might be a natural part of map generation and not a bug at all. The bug seems to be not letting new players know how/why they are doomed or giving them any option to get off the island.
Better:

Attempt to pathfind from the player to chunks that have not been generated yet (preferably in order of "shortest path first"). Generate those chunks. Continue until one each of: tree, coal, iron, stone, copper, oil, and biter spawner, has been generated in a location that can be reached from the player (special check). If no further chunks can be reached, and not all deposit types have been reached, relocate the player to a chunk that has not been generated yet (and is therefore unreachable from his original position), and restart from the beginning.

I think it's a good compromise: you can wind up on an island with limited resources, but you're guaranteed to have at least SOME of every raw resource (and probably a reasonable amount of space), so you're not completely locked out of part of the tech tree with no recourse.
User avatar
cube
Former Staff
Former Staff
Posts: 1111
Joined: Tue Mar 05, 2013 8:14 pm
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by cube »

roothorick wrote:Attempt to pathfind from the player to chunks that have not been generated yet (preferably in order of "shortest path first"). Generate those chunks. Continue until one each of: tree, coal, iron, stone, copper, oil, and biter spawner, has been generated in a location that can be reached from the player (special check). If no further chunks can be reached, and not all deposit types have been reached, relocate the player to a chunk that has not been generated yet (and is therefore unreachable from his original position), and restart from the beginning.

I think it's a good compromise: you can wind up on an island with limited resources, but you're guaranteed to have at least SOME of every raw resource (and probably a reasonable amount of space), so you're not completely locked out of part of the tech tree with no recourse.
We were already discussing something simillar some time ago, basically a mechanism that would separately ensure that there is an exact number of resources in the starting area and that the starting area is in a part of the world with average terrain height (not in the middle of the sea or on the top of a mountain).
But it has kinda low priority.... probably will get into the game sooner or later, though.
User avatar
ssilk
Global Moderator
Global Moderator
Posts: 12889
Joined: Tue Apr 16, 2013 10:35 pm
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by ssilk »

Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Rakasch
Burner Inserter
Burner Inserter
Posts: 8
Joined: Sun Aug 17, 2014 1:36 pm
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by Rakasch »

A game start on a paraglider sound great, only you have to start the flight high up in the sky, to find some useful land.

Starting on an island isn't the worst that can happen:
Right now I startet as reincarnation of Jusus, standing on the water in the middle of nowhere. There wasn't any land in sight.
I would call this a bug.
Image
User avatar
cpy
Filter Inserter
Filter Inserter
Posts: 840
Joined: Thu Jul 31, 2014 5:34 am
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by cpy »

Hmm ability to swim, some water resources (probably oil/gas), water creeps, ships, this game have really insanely high potential.
psihius
Fast Inserter
Fast Inserter
Posts: 192
Joined: Mon Dec 15, 2014 12:47 am
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by psihius »

I say add ability to make a basic boat, so people can actually play maps like these and expand over the water if they want (because it's fun to move the base to mainland and keep the old base as a fallback and resource stash). At least this should be relatively easy. Adding more water related content is the ultimate solution - I would like a powered boat and a transporting ship, just like there are trains (it should be relatively big and have a lot of space, so you need a big body of water to use it). And balance the speed - big ships are slow, but have a ton of capacity. Smaller boats have less space, can not be automated (maybe) like a car is in the game now.

I would really like the basic boat ASAP, because it opens a lot of possibilities. And wait for other water stuff as long as needed.
Asakari
Manual Inserter
Manual Inserter
Posts: 2
Joined: Sun May 10, 2015 8:22 am
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by Asakari »

Maybe the starting Position cannot be within a square where water is, maybe 10x10. It is a one time check . if the check find water, just make an automatic restart. Only when use random maps.

Try this map, werry funny.

>>>AAALABYAAAADAwYAAAAJAAAAYWxpZW4tb3JlAwMCBAAAAGNvYWwD
AwIKAAAAY29wcGVyLW9yZQMDAgkAAABjcnVkZS1vaWwDAwIIAAAAaXJ
vbi1vcmUDAwIFAAAAc3RvbmUDAwLHLaVpLnAAABUyAAAAAAAAAAAAAA
MANg8I1A==<<<

If nessesary : 0.11.22 (Build 14011, win64)

Have fun :)
British_Petroleum
Filter Inserter
Filter Inserter
Posts: 321
Joined: Tue Dec 23, 2014 7:21 am
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by British_Petroleum »

cpy wrote:Hmm ability to swim, some water resources (probably oil/gas), water creeps, ships, this game have really insanely high potential.
+1
RedScourge
Inserter
Inserter
Posts: 23
Joined: Sat Jan 31, 2015 2:15 am
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by RedScourge »

Obviously a boat needs to be added to the game. The question then becomes whether or not to give the player a boat at the start. I think that is a bit of a lazy solution.

Therefore, before placing the player on the map, the biter pathfinding AI should be used to see if there is a path between the player and a tree. If yes, then do nothing, if no, then use a standard spiral search pattern to place the player 10 chunks away and repeat this process again. If it is necessary that the player must start at origin coordinates, either you have to spawn a new map, or have the ability to offset either the coordinates to the new origin, or add the ability to have the player not always start at the origin. Perhaps another check could be added: if the pathfinding AI cannot find a way to get to the nearest enemy spawner (i.e. player is on a medium island or smaller), then rather than giving the player a random hint on start, the first hint given to the player at the start of the game be a hint on how to create a boat. This would decrease the chance that the player chops down all the trees on their island before they think to make a boat.

In one of my first maps, a spawner was created on an island in the middle of a large lake, and my base surrounds the lake. The result is that my logistics robots occasionally get shot down when crossing the lake directly. I cannot reach this lake and kill the spawner, so a boat would be great!
AyrA
Inserter
Inserter
Posts: 37
Joined: Mon Aug 31, 2015 8:00 pm
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by AyrA »

Precondition
Use this map string

Code: Select all

>>>AAAMAA8AAAADAwYAAAAEAAAAY29hbAMDAgoAAABjb3BwZXItb3Jl
AwMCCQAAAGNydWRlLW9pbAMDAgoAAABlbmVteS1iYXNlAQAACAAAAGl
yb24tb3JlAwMCBQAAAHN0b25lAwMCq4L0sHYyAAD4aQAAAAAAAAAAAA
AFAEAlDj4=<<<
Problem
This map exchange string will create an unusable map. It was randomly generated by factorio when creating a new game. I think this generates the smallest possible land you can have in the game and is quite hilarious. You can't die, but also you can't win.

Reproducible
Yes

Possible solutions
Add a simple A* path finder to the game. The provided wiki link has pseudocode included.
Use the algorithm to check, if the player can reach at least 10'000 items (not map squares) of all basic resources(coal, stone, copper, iron, oil, alien base), except if he has disabled one of these of course.
If not enough resources are found, use the next seed available. (seed+1).

The number of items to search can be increased to the number of items needed to complete the game objective to ensure a map is guaranteed to be solved. Another cheap method would be to ensure, that a water body cannot 'touch itself'. This would also remove islands, which are unuseable at the moment.
daniel34
Global Moderator
Global Moderator
Posts: 2761
Joined: Thu Dec 25, 2014 7:30 am
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by daniel34 »

AyrA wrote:I think this generates the smallest possible land you can have in the game and is quite hilarious.
Start on this one and have fun:
Image

BTW you are not alone:
Image
AyrA wrote:Possible solutions
Add a simple A* path finder to the game. The provided wiki link has pseudocode included.
Use the algorithm to check, if the player can reach at least 10'000 items (not map squares) of all basic resources(coal, stone, copper, iron, oil, alien base), except if he has disabled one of these of course.
If not enough resources are found, use the next seed available. (seed+1).

The number of items to search can be increased to the number of items needed to complete the game objective to ensure a map is guaranteed to be solved. Another cheap method would be to ensure, that a water body cannot 'touch itself'. This would also remove islands, which are unuseable at the moment.
I'm pretty sure the devs have a good reason why they haven't implemented an algorithm for not starting on an island yet. It seems pretty easy to do on paper, but what's actually going on at the source code level is hidden from us.
quick links: log file | graphical issues | wiki
enmoku
Burner Inserter
Burner Inserter
Posts: 5
Joined: Sat Dec 05, 2015 2:34 pm
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by enmoku »

Not sure if this has been said, but simpler solution to changing the map generator drastically or regenerating the map if on an island. Check the start location in some part of the map generation (just generate path to X distance away in multiple directions and see if they are reachable for example), if it's invalid, MOVE the start location and check again. You don't need to do the whole thing all over again. And continue generating/altering the start zone around the valid location as normal, not before.
mwalimu
Manual Inserter
Manual Inserter
Posts: 3
Joined: Wed Jan 04, 2017 8:27 pm
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by mwalimu »

After reading through this thread and a few other discussions on island spawns, there's one possible solution that I didn't come across. Give the player an opportunity to place himself somewhere else on the starting map. He'd only be able to do this once without disabling achievements (if the player changes his mind, he could start over using the map exchange string). I'll leave as an exercise for the developers how best to handle the user interface for providing that option.
Bizz Keryear
Long Handed Inserter
Long Handed Inserter
Posts: 91
Joined: Thu Oct 22, 2015 5:08 am
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by Bizz Keryear »

I also call this a bug as well
And some of the things said below are quite reasonable, but instead I just would change the map algorithm to create 1 wide land bridges to the land mass until this issue is resolved ... and with the recent changes (being able to create land of your own from stone) maybe less (than 10k) resources and not including enemy bases ... you can build there if you want / have to ... means you have to be careful to not to waste your stones.

A other way would be to add enough stones to get you to next bigger land masses.
AyrA wrote:Precondition
Use this map string

Code: Select all

>>>AAAMAA8AAAADAwYAAAAEAAAAY29hbAMDAgoAAABjb3BwZXItb3Jl
AwMCCQAAAGNydWRlLW9pbAMDAgoAAABlbmVteS1iYXNlAQAACAAAAGl
yb24tb3JlAwMCBQAAAHN0b25lAwMCq4L0sHYyAAD4aQAAAAAAAAAAAA
AFAEAlDj4=<<<
Problem
This map exchange string will create an unusable map. It was randomly generated by factorio when creating a new game. I think this generates the smallest possible land you can have in the game and is quite hilarious. You can't die, but also you can't win.

Reproducible
Yes

Possible solutions
Add a simple A* path finder to the game. The provided wiki link has pseudocode included.
Use the algorithm to check, if the player can reach at least 10'000 items (not map squares) of all basic resources(coal, stone, copper, iron, oil, alien base), except if he has disabled one of these of course.
If not enough resources are found, use the next seed available. (seed+1).

The number of items to search can be increased to the number of items needed to complete the game objective to ensure a map is guaranteed to be solved. Another cheap method would be to ensure, that a water body cannot 'touch itself'. This would also remove islands, which are unuseable at the moment.
axelsword
Inserter
Inserter
Posts: 23
Joined: Sun Mar 27, 2016 12:11 pm
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by axelsword »

Another island spawn, 0.15
screen shot
map exchange string
Koub
Global Moderator
Global Moderator
Posts: 7955
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by Koub »

It's not needed to report each single individual map where you spawn on an island.
You can just hit "restart" and play, as said earlier, it's a very known issue.
Koub - Please consider English is not my native language.
Tubig
Burner Inserter
Burner Inserter
Posts: 14
Joined: Thu Apr 07, 2016 1:56 pm
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by Tubig »

axelsword wrote:Another island spawn, 0.15
screen shot
map exchange string
This is a particularly interesting map because, although an island start, it is playable. Looks like there are enough resourses on the island to build a bridge to the mainland. Challanging, but not impossible.
userasd
Inserter
Inserter
Posts: 26
Joined: Tue Feb 07, 2017 12:48 pm
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by userasd »

Tubig wrote:
axelsword wrote:Another island spawn, 0.15
screen shot
map exchange string
This is a particularly interesting map because, although an island start, it is playable. Looks like there are enough resourses on the island to build a bridge to the mainland. Challanging, but not impossible.

Not even challenging. You have a base protected from bugs. GG EASY
wvlad
Fast Inserter
Fast Inserter
Posts: 217
Joined: Thu Jul 13, 2017 9:55 pm
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by wvlad »

Simple idea: you could start in a ghost mode and pick a place where you wonna start in a limited square.
kreatious
Inserter
Inserter
Posts: 20
Joined: Sat Jul 15, 2017 1:59 am
Contact:

Re: Starting on a small isle?? Read this before you post!

Post by kreatious »

Could the player's starting position just be randomly (but still deterministic) re-positioned, until you're not on a small island? Small islands can be checked by scanning 100 tiles in each cardinal direction, counting the number of land tiles till' ya hit water, adding them up and seeing if the result is less than 250. After 100 failed random guesses, spawn the player on a small island anyway. This won't solve the issue 100%, but it'll reduce the number of bug reports about this issue.
Post Reply

Return to “Minor issues”