pioneerspacesim / pioneer

A game of lonely space adventure
https://pioneerspacesim.net
1.63k stars 376 forks source link

Pioneer new game fails to progress beyond CreateCollisionMesh after last planet created #4143

Closed macksting closed 7 years ago

macksting commented 7 years ago

Observed behaviour

In (5a4dde8), hangs on new game at Earth after the line "CreateCollisionMesh for : (kanara)" in the terminal. Hangs on new game at New Hope after the same. After restoring old save game folder to test old stuff, hangs on load game after creating "Faenla B d". Have removed old saves again, created new save and .cfg using (cf0e65b), will load from new Earth save game. In (5a4dde8), loading from this save hangs from CreateCollisionMesh for : (pumpkinseed_police) instead, because it finished making Charon and instead went for the pumpkinseed first, not the kanara, so it's not the kanara's fault.

Expected behaviour

Game continues to start up after pressing New Game or loading a save. (cf0e65b) demonstrates expected behavior.

Steps to reproduce

Running in Linux, rename existing pioneer and .pioneer folders then git clone https://github.com/pioneerspacesim/pioneer.git cd pioneer ./bootstrap && ./configure && make ./pioneer New Game hang brain

My pioneer version (and OS): (5a4dde8), lubuntu 16.04

raftakis commented 7 years ago

Same behavior and on Linux Debian.. After Download and successfully Compile, removing old ~/.pioneer start game, start at earth..

Here is my OUTPUT ..

man@hermes ~/pioneer $ ./pioneer
ver  on: Linux

System Name: Linux
Host Name: hermes
Release(Kernel) Version: 3.16.0-4-686-pae
Kernel Build Timestamp: #1 SMP Debian 3.16.43-2+deb8u3 (2017-08-15)
Machine Arch: i686
Domain Name: (none)

SDL Version 2.0.2
Initialized OpenGL 3.1, with extensions, renderer
invalid axis binding '' in config file for BindAxisPitch
invalid axis binding '' in config file for BindAxisRoll
invalid axis binding '' in config file for BindAxisYaw
started 7 worker threads
ShipType::Init()
Lua::Init()
Fonts:
font orbiteer:
- DejaVuSans.ttf 1.200000
- wqy-microhei.ttc 1.000000
- Orbiteer-Bold.ttf 1.000000
font pionillium:
- DejaVuSans.ttf 0.928571
- wqy-microhei.ttc 1.000000
- PionilliumText22L-Medium.ttf 1.000000
Game::CanLoadGame('_exit')
nanosvg: /home/rafman/pioneer/data/icons/icons.svg 1024x1024
nanosvg: /home/rafman/pioneer/data/icons/icons.svg 1024x1024
nanosvg: /home/rafman/pioneer/data/icons/logo.svg 512x512
GalaxyGenerator::Init()
Creating new galaxy generator 'legacy' version 1
Error: Custom system definition: Value cannot be negative/zero (0.000000) for Themisto : mass
Number of factions added: 103
StarSystemCache: misses: 0, slave hits: 0, master hits: 0
SectorCache: misses: 101, slave hits: 0, master hits: 2
FaceParts::Init()
Face Generation source images loaded.
new ModelCache
Shields::Init
BaseSphere::Init
CityOnPlanet::Init
CreateCollisionMesh for : (kbuilding01)
CreateCollisionMesh for : (kbuilding02)
CreateCollisionMesh for : (kbuilding03)
CreateCollisionMesh for : (newbuilding1)
CreateCollisionMesh for : (newbuilding10)
CreateCollisionMesh for : (newbuilding11)
CreateCollisionMesh for : (newbuilding2)
CreateCollisionMesh for : (newbuilding3)
CreateCollisionMesh for : (newbuilding4)
CreateCollisionMesh for : (newbuilding5)
CreateCollisionMesh for : (newbuilding6)
CreateCollisionMesh for : (newbuilding7)
CreateCollisionMesh for : (newbuilding8)
CreateCollisionMesh for : (newbuilding9)
Got 14 buildings of tag city_building
 - kbuilding01: 29.664692
 - kbuilding02: 46.268344
 - kbuilding03: 41.542333
 - newbuilding1: 36.202756
 - newbuilding10: 16.297418
 - newbuilding11: 34.961034
 - newbuilding2: 22.822782
 - newbuilding3: 22.649894
 - newbuilding4: 25.978193
 - newbuilding5: 22.908506
 - newbuilding6: 29.817877
 - newbuilding7: 22.674426
 - newbuilding8: 23.154979
 - newbuilding9: 36.528138
End of buildings.
SpaceStation::Init
CreateCollisionMesh for : (ground_station)
ground_station has:
 14 entrances,
 14 pads,
 0 exits
CreateCollisionMesh for : (new_ground)
new_ground has:
 6 entrances,
 6 pads,
 0 exits
CreateCollisionMesh for : (orbital_station_2-10k)
orbital_station_2-10k has:
 5 entrances,
 64 pads,
 5 exits
CreateCollisionMesh for : (orbital_station_2-2k)
orbital_station_2-2k has:
 4 entrances,
 18 pads,
 4 exits
CreateCollisionMesh for : (orbital_station_2-5k)
orbital_station_2-5k has:
 5 entrances,
 64 pads,
 5 exits
CreateCollisionMesh for : (orbital_station_2-5k10k)
orbital_station_2-5k10k has:
 5 entrances,
 64 pads,
 5 exits
NavLights::Init
Sfx::Init
Sound::Init

Loading took: 78735.180540 milliseconds
CreateCollisionMesh for : (ac33)
CreateCollisionMesh for : (amphiesma)
CreateCollisionMesh for : (bluenose)
CreateCollisionMesh for : (bowfin)
CreateCollisionMesh for : (deneb)
CreateCollisionMesh for : (dsminer)
CreateCollisionMesh for : (kanara_civ)
CreateCollisionMesh for : (lunarshuttle)
CreateCollisionMesh for : (malabar)
CreateCollisionMesh for : (molamola)
CreateCollisionMesh for : (molaramsayi)
CreateCollisionMesh for : (natrix)
CreateCollisionMesh for : (nerodia)
CreateCollisionMesh for : (pumpkinseed)
CreateCollisionMesh for : (sinonatrix)
CreateCollisionMesh for : (storeria)
CreateCollisionMesh for : (varada)
CreateCollisionMesh for : (vatakara)
CreateCollisionMesh for : (venturestar)
CreateCollisionMesh for : (wave)
CreateCollisionMesh for : (xylophis)
Creating new galaxy generator 'legacy' version 1
Clearing and re-using previous Galaxy object
StarSystemCache: misses: 0, slave hits: 0, master hits: 0
SectorCache: misses: 101, slave hits: 0, master hits: 1
Sol:
    height fractal: Ellipsoid
    colour fractal: StarG
    seed: 2514954181
Mercury:
    height fractal: MountainsCraters2
    colour fractal: Rock
    seed: 6
Venus:
    height fractal: Barren Rock
    colour fractal: Desert
    seed: 3673958391
Earth:
    height fractal: Mapped
    colour fractal: EarthLikeHeightmapped
    seed: 228984367
Moon:
    height fractal: Mapped2
    colour fractal: Rock2
    seed: 4294967291
Mars:
    height fractal: Mapped
    colour fractal: EarthLikeHeightmapped
    seed: 2977652237
Phobos:
    height fractal: Asteroid4
    colour fractal: BandedRock
    seed: 439771126
Deimos:
    height fractal: Asteroid4
    colour fractal: BandedRock
    seed: 439771126
Warning: Lua custom Systems definition: Surface starport has been automatically relocated. This is in order to place it on flatter ground to reduce the chance of landing pads being buried. This is not an error as such and you may attempt to move the starport to another location by changing latitude and longitude fields.
      Surface starport name: Tomm's Sanctuary, Body name: Deimos, In sector: x = 0, y = 0, z = 0.
Eros:
    height fractal: MountainsCraters2
    colour fractal: Rock
    seed: 842785371
Pallas:
    height fractal: Barren Rock 3
    colour fractal: Rock
    seed: 2940447687
Vesta:
    height fractal: MountainsCraters2
    colour fractal: Rock
    seed: 3241555415
Ceres:
    height fractal: MountainsCraters2
    colour fractal: Rock
    seed: 802070188
Metis:
    height fractal: Asteroid2
    colour fractal: Asteroid
    seed: 4294967198
Adrastea:
    height fractal: Asteroid3
    colour fractal: Asteroid
    seed: 4294963315
Amalthea:
    height fractal: Asteroid2
    colour fractal: BandedRock
    seed: 4294957314
Thebe:
    height fractal: Asteroid
    colour fractal: Rock
    seed: 4293977314
Warning: Lua custom Systems definition: Surface starport has been automatically relocated. This is in order to place it on flatter ground to reduce the chance of landing pads being buried. This is not an error as such and you may attempt to move the starport to another location by changing latitude and longitude fields.
      Surface starport name: Thebe Gas Refinery, Body name: Thebe, In sector: x = 0, y = 0, z = 0.
Io:
    height fractal: MountainsCraters2
    colour fractal: Rock
    seed: 4290011317
Europa:
    height fractal: Barren Rock 2
    colour fractal: Ice
    seed: 2102431459
Ganymede:
    height fractal: Barren Rock
    colour fractal: Rock
    seed: 3062955636
Callisto:
    height fractal: Barren Rock 3
    colour fractal: Rock
    seed: 1272712740
Themisto:
    height fractal: Asteroid3
    colour fractal: Rock
    seed: 134102334
Leda:
    height fractal: Asteroid
    colour fractal: Asteroid
    seed: 4211482628
Himalia:
    height fractal: Asteroid4
    colour fractal: BandedRock
    seed: 1344978
Lysithea:
    height fractal: Asteroid2
    colour fractal: Asteroid
    seed: 3934
Elara:
    height fractal: Asteroid4
    colour fractal: BandedRock
    seed: 128860219
Aega:
    height fractal: Asteroid3
    colour fractal: Asteroid
    seed: 6953
Tethys:
    height fractal: Barren Rock 3
    colour fractal: Rock
    seed: 3639134107
Dione:
    height fractal: Barren Rock 3
    colour fractal: Rock
    seed: 3732948941
Rhea:
    height fractal: Barren Rock 3
    colour fractal: Rock
    seed: 4112814609
Titan:
    height fractal: MountainsRiversVolcano
    colour fractal: Desert
    seed: 0
Iapetus:
    height fractal: HillsCraters2
    colour fractal: Rock
    seed: 3650944653
Phoebe:
    height fractal: MountainsCraters2
    colour fractal: Rock
    seed: 1740171277
Ariel:
    height fractal: MountainsCraters2
    colour fractal: Rock
    seed: 2173466496
Umbriel:
    height fractal: HillsCraters2
    colour fractal: Rock
    seed: 944902888
Titania:
    height fractal: HillsNormal
    colour fractal: Rock
    seed: 285321926
Oberon:
    height fractal: Barren Rock 3
    colour fractal: Rock
    seed: 3144510297
Proteus:
    height fractal: Asteroid4
    colour fractal: BandedRock
    seed: 1251043226
Triton:
    height fractal: HillsCraters2
    colour fractal: Rock
    seed: 3799699822
Nereid:
    height fractal: Asteroid3
    colour fractal: Asteroid
    seed: 1126837805
Pluto:
    height fractal: HillsCraters2
    colour fractal: Rock
    seed: 4143916111
Charon:
    height fractal: Barren Rock 3
    colour fractal: Rock
    seed: 572825420
CreateCollisionMesh for : (kanara)
..................HERE (I have music) and the game is freezing..............
macksting commented 7 years ago

gdb bt


CreateCollisionMesh for : (kanara)
^C
Thread 1 "pioneer" received signal SIGINT, Interrupt.
0x0000000000643987 in PopulateStarSystemGenerator::PositionSettlementOnPlanet (
    this=this@entry=0xc178d20, sbody=0x10a2e6c0, 
    prevOrbits=std::vector of length 2, capacity 8 = {...})
    at StarSystemGenerator.cpp:1380
1380            if(len < 0.05)
(gdb) bt
#0  0x0000000000643987 in PopulateStarSystemGenerator::PositionSettlementOnPlanet (this=this@entry=0xc178d20, sbody=0x10a2e6c0, 
    prevOrbits=std::vector of length 2, capacity 8 = {...})
    at StarSystemGenerator.cpp:1380
#1  0x00000000006480ca in PopulateStarSystemGenerator::PopulateAddStations (
    this=this@entry=0xc178d20, sbody=0x9e97aa0, system=system@entry=0xc1a0860)
    at StarSystemGenerator.cpp:1688
#2  0x00000000006473c3 in PopulateStarSystemGenerator::PopulateAddStations (
    this=this@entry=0xc178d20, sbody=0x11cd79d0, system=system@entry=0xc1a0860)
    at StarSystemGenerator.cpp:1557
#3  0x00000000006473c3 in PopulateStarSystemGenerator::PopulateAddStations (
    this=this@entry=0xc178d20, sbody=sbody@entry=0x12616c20, system=0xc1a0860)
    at StarSystemGenerator.cpp:1557
#4  0x0000000000648add in PopulateStarSystemGenerator::Apply (this=0xc178d20, 
    rng=..., galaxy=..., system=..., config=<optimized out>)
    at StarSystemGenerator.cpp:1831
#5  0x0000000000633863 in GalaxyGenerator::GenerateStarSystem (this=0x2419890, 
    galaxy=..., path=..., cache=0x24e9398) at GalaxyGenerator.cpp:202
#6  0x000000000062eb96 in GalaxyGenerator::Generate<StarSystem, GalaxyObjectCache<StarSystem, SystemPath::LessSystemOnly> > (cache=0x24e9398, path=..., 
    galaxy=..., this=<optimized out>) at ./../galaxy/GalaxyGenerator.h:90
#7  GalaxyObjectCache<StarSystem, SystemPath::LessSystemOnly>::GetCached (
    this=0x24e9398, path=...) at GalaxyCache.cpp:62
---Type <return> to continue, or q <return> to quit---
#8  0x00000000004d9c8e in Galaxy::GetStarSystem (path=..., this=<optimized out>) at galaxy/Galaxy.h:47
#9  l_starsystem_get_nearby_systems (l=0x1593780) at LuaStarSystem.cpp:283
#10 0x000000000079fa3e in luaD_precall (L=L@entry=0x1593780, func=<optimized out>, func@entry=0x18d6ce0, nresults=nresults@entry=1) at ldo.c:318
#11 0x00000000007ad106 in luaV_execute (L=L@entry=0x1593780) at lvm.c:709
#12 0x00000000007a007e in luaD_call (L=0x1593780, func=<optimized out>, nResults=<optimized out>, allowyield=<optimized out>) at ldo.c:395
#13 0x000000000079f07c in luaD_rawrunprotected (L=0x1593780, f=0x797bc0 <f_call>, ud=0x7fffffffdb00) at ldo.c:131
#14 0x00000000007a0473 in luaD_pcall (L=L@entry=0x1593780, func=func@entry=0x797bc0 <f_call>, u=u@entry=0x7fffffffdb00, old_top=80, ef=<optimized out>) at ldo.c:595
#15 0x000000000079cb13 in lua_pcallk (L=L@entry=0x1593780, nargs=nargs@entry=0, nresults=nresults@entry=0, errfunc=errfunc@entry=4, ctx=ctx@entry=0, k=k@entry=0x0) at lapi.c:949
#16 0x00000000004db3bc in pi_lua_protected_call (L=L@entry=0x1593780, nargs=nargs@entry=0, nresults=nresults@entry=0) at LuaUtils.cpp:553
#17 0x00000000004ab5db in LuaEvent::Emit () at LuaEvent.cpp:51
#18 0x00000000004fe26d in Pi::StartGame () at Pi.cpp:1233
#19 0x0000000000505994 in Pi::Start () at Pi.cpp:1325
#20 0x000000000041137c in main (argc=<optimized out>, argv=<optimized out>) at main.cpp:130
(gdb)```
fluffyfreak commented 7 years ago

Ok the real problem is PopulateStarSystemGenerator::PositionSettlementOnPlanet the CreateCollisionMesh for : (kanara) is just the last line output before it explodes.

fluffyfreak commented 7 years ago

...and of course it doesn't happen under Visual Studio even in full debug 🤦‍♂️

fluffyfreak commented 7 years ago

@macksting @raftakis would either of you be willing/able to make a couple of small changes to the code, build and retry?

fluffyfreak commented 7 years ago

@macksting @raftakis ok if you would like to try the latest code, it should all be good and working again!