Overgrowth Linux problems and their solutions/workarounds

A secret forum for people who preorder Overgrowth!
pumpernickel
Posts: 84
Joined: Thu Jan 02, 2014 9:28 am
Location: North Rhine-Westphalia, Germany

Re: Overgrowth Linux problems and their solutions/workaround

Post by pumpernickel » Thu Jan 02, 2014 10:08 am

started up fine but all the textures were missing
Experienced the same here, was solved with the hint in this thread here to set LC_ALL (I set it to 'C').
However, I'm on 12.04 (waiting for 14.04) with an nvidia card, maybe you first have to get that s3tc support for your intel driver to work, but as I'm just new to this I can't tell for sure ;)

EDIT: also I'm running the current humble-dloaded-a204 version, not the steam one.

User avatar
undeamed
Posts: 5
Joined: Wed Dec 18, 2013 6:19 pm
Location: probably not near you.

Re: Overgrowth Linux problems and their solutions/workaround

Post by undeamed » Mon Jan 06, 2014 1:21 pm

Vangrew wrote: "Bad xml data in level fileData/Levels/Challenge/tree_canyon_summer.xml".
As stated earlier, this is a path issue. the level is located in the "challenge"(lower case 'c') folder but the script which locates the file is looking for it in the Challenge(upper-case 'C') folder, a folder which does not exist. this can be fixed by going into the "Data/UI/mainmenu/menu.html" file, located in the folder of your overgrowth folder(wherever you told the install er to download).

Code: Select all

replace level:'Challenge/tree_canyon_summer.xml'
with level:'challenge/tree_canyon_summer.xml'
this line should be on line number 205

This is also the issue with some of the objects in the "load item" menu, stating they have bad .xml files and possibly the reason that some of the files lack an image. I do not know which file runs the editor and loads items and was unable to fix this issue.

User avatar
last
Posts: 2154
Joined: Fri Jan 07, 2011 7:02 am
Location: Estonia

Re: Overgrowth Linux problems and their solutions/workaround

Post by last » Mon Jan 06, 2014 1:32 pm

undeamed wrote:This is also the issue with some of the objects in the "load item" menu, stating they have bad .xml files and possibly the reason that some of the files lack an image. I do not know which file runs the editor and loads items and was unable to fix this issue.
all the .js files in Overgrowth\Data\UI\spawner\objects folder are containing spawner items filepaths.

User avatar
undeamed
Posts: 5
Joined: Wed Dec 18, 2013 6:19 pm
Location: probably not near you.

Re: Overgrowth Linux problems and their solutions/workaround

Post by undeamed » Mon Jan 06, 2014 2:29 pm

last wrote:
undeamed wrote:This is also the issue with some of the objects in the "load item" menu, stating they have bad .xml files and possibly the reason that some of the files lack an image. I do not know which file runs the editor and loads items and was unable to fix this issue.
all the .js files in Overgrowth\Data\UI\spawner\objects folder are containing spawner items filepaths.
yes I discovered this fact just a while ago. I was able to fix all of the errors for themenu by going through and fixing the paths, a tedious but necessary effort. Here's the file to fix all the errors.

Code: Select all

addTab('Object');

addItem('Object','Crete Block','Data/Objects/Crete/CreteBlockStandard.xml','crete1.png');
addItem('Object','Crete Broken','Data/Objects/Crete/CreteBlockBroken.xml','crete2.png');
addItem('Object','Crete Corner','Data/Objects/Crete/CreteBlockCorner.xml','crete3.png');
addItem('Object','Crete Shard','Data/Objects/Crete/CreteBlockShard.xml','crete4.png');
addItem('Object','Crete Interior','Data/Objects/Crete/CreteBlockInterior.xml','crete5.png');
addItem('Object','Crete Wall','Data/Objects/Crete/CreteBlockWall.xml','crete6.png');
addItem('Object','Crete Base','Data/Objects/Crete/CreteBlockBase.xml','crete7.png');
addItem('Object','Rock','Data/Objects/Environment/Rocks/rock1b.xml','rock4.png');
addItem('Object','Rock Tall','Data/Objects/Environment/Rocks/DesertRock1a.xml','rock3.png');
addItem('Object','Rock Flat','Data/Objects/rocks/rock1a.xml','rock5.png');
addItem('Object','Stone','Data/Objects/Environment/rocks/BlockyStone1.xml','rock1.png');
addItem('Object','Stone Round','Data/Objects/rocks/RoundStone1.xml','rock2.png');
addItem('Object','Cliff','Data/Objects/Environment/rocks/CliffPeak.xml','rock6.png');
addItem('Object','Brick Wall','Data/Objects/Buildings/blockCatBrickWall.xml','brick.png');
addItem('Object','Brick Wall2','Data/Objects/Buildings/Blocks/blockInterlockingStone.xml','block2.png');
addItem('Object','Road','Data/Objects/Buildings/blockCatRoad.xml','Catroad.png');
addItem('Object','Floor','Data/Objects/Buildings/blockCatFloor.xml','Catfloor.png');
addItem('Object','Stucco Wall','Data/Objects/Buildings/blockCatStuccoWall.xml','Catstucco.png');
addItem('Object','Fancy Ceiling','Data/Objects/Buildings/blockCatFancyCeiling.xml','fancy.png');
addItem('Object','Ruins Wall','Data/Objects/Buildings/Ruins/Ruins1Wall.xml','ruinswall.png');
addItem('Object','Ruins Pillar','Data/Objects/Buildings/Ruins/Ruins1Pillar.xml','ruinspillar.png');
addItem('Object','Ruins Brick1','Data/Objects/Buildings/Ruins/Ruins1LongBrick.xml','ruinsbrick1.png');
addItem('Object','Ruins Brick2','Data/Objects/Buildings/Ruins/Ruins1ShortBrick.xml','ruinsbrick2.png');
addItem('Object','Roof','Data/Objects/Buildings/Roofs/RoofTerracotta.xml','roofterra.png');
addItem('Object','Tile','Data/Objects/Buildings/Roofs/TileTerracotta.xml','terra.png');
addItem('Object','Roof Slate','Data/Objects/Buildings/Roofs/RoofSlate.xml','tileroof.png');
addItem('Object','Tile Slate','Data/Objects/Buildings/Roofs/TileSlate.xml','tile.png');
addItem('Object','Roof Side','Data/Objects/Buildings/RoofSides/roofsideCatStuccoWall.xml','sideroof.png');
addItem('Object','Pillar','Data/Objects/Buildings/pillar1.xml','pillar.png');
addItem('Object','Curb','Data/Objects/Buildings/Curb1.xml','curb.png');
addItem('Object','Stairs','Data/Objects/Buildings/Stairs1.xml','stairs.png');
addItem('Object','Stone Window','Data/Objects/Buildings/StoneWindow1.xml','stonewindow.png');
addItem('Object','Drain','Data/Objects/Buildings/DrainSpout1.xml','drain.png');
addItem('Object','Stucco Pillar','Data/Objects/Buildings/StuccoPillar1.xml','stuccopillar.png');
addItem('Object','Stucco Wall','Data/Objects/Buildings/StuccoWall1.xml','stuccowall.png');
addItem('Object','Door','Data/Objects/Buildings/Door1.xml','door.png');
addItem('Object','Window Frame','Data/Objects/Buildings/TopSill1.xml','sill.png');
addItem('Object','Window','Data/Objects/Buildings/window1.xml','window.png');
addItem('Object','Trap Door','Data/Objects/Buildings/TrapDoor1.xml','trapdoor.png');
addItem('Object','Fence','Data/Objects/Buildings/Fence1.xml','fence.png');
addItem('Object','Post Wooden','Data/Objects/Buildings/Post1.xml','post.png');
addItem('Object','Post Round','Data/Objects/Buildings/PostRound1.xml','postround.png');
addItem('Object','Stone Block Pile','Data/Objects/Environment/LitterLoads/StoneBlockPile.xml','stone_block_pile.png');
addItem('Object','Stone Block','Data/Objects/Environment/LitterLoads/StoneBlock.xml','stone_block.png');
addItem('Object','Buttress Base','Data/Objects/Buildings/Butress/ButtressBase.xml','butbase.png');
addItem('Object','Buttress Middle','Data/Objects/Buildings/Buttress/CarvedButtress.xml','butmid.png');
addItem('Object','Buttress Top','Data/Objects/Buildings/Buttress/ButtressTop.xml','buttop.png');
addItem('Object','Cat Couch','Data/Objects/Environment/Furniture/CatCouch.xml','catcouch.png');
addItem('Object','Cat Stand','Data/Objects/Environment/Furniture/CatStand.xml','catstand.png');
addItem('Object','Square Pillow','Data/Objects/Environment/Furniture/SquarePillow.xml','squarepillow.png');
addItem('Object','Foot Pillow','Data/Objects/Environment/Furniture/FootPillow.xml','footpillow.png');
addItem('Object','Long Pillow','Data/Objects/Environment/Furniture/LongPillow.xml','longpillow.png');
addItem('Object','Dog Litter','Data/Objects/Environment/LitterLoads/DogLitter.xml','litterdog.png');
addItem('Object','Pack','Data/Objects/Gear/RabbitPack.xml','pack.png');
addItem('Object','Pack2','Data/Objects/TestBackpack.xml','pack1.png');
addItem('Object','Large Gourd','Data/Objects/Environment/LitterLoads/LargeGourd.xml','largegourd.png');
addItem('Object','Small Gourd','Data/Objects/Environment/LitterLoads/SmallGourd.xml','smallgourd.png');
addItem('Object','Large Sack','Data/Items/collectable/ratjunksack.xml','sacklarge.png');
addItem('Object','Small Sack','Data/Objects/Gear/RatJunk/RatJunkPouch.xml','sacksmall.png');
addItem('Object','Bottle','Data/Objects/Gear/RatJunk/RatJunkBottle.xml','pitcher.png');
addItem('Object','Basket','Data/Objects/Environment/LitterLoads/Basket1.xml','basket.png');
addItem('Object','Tool Box','Data/Objects/Gear/DogTools/DogToolBox.xml','box.png');
addItem('Object','Hammer','Data/Items/Gear/DogTools/DogToolHammer.xml','hammertool.png');
addItem('Object','Chisel','Data/Items/Gear/DogTools/DogToolChisel.xml','wedge.png');
addItem('Object','Awl','Data/Items/Gear/DogTools/DogToolAwl.xml','chisel.png');
addItem('Object','Rope','Data/Objects/Buildings/RopeBall1.xml','rope.png');
addItem('Object','Nail','Data/Objects/Buildings/LargeNail1.xml','nail.png');
addItem('Object','Tag','Data/Objects/Gear/RatJunk/RatJunkTag.xml','tag.png');
addItem('Object','Bird Skull','Data/Objects/Gear/RatJunk/RatJunkBirdSkull.xml','birdskull.png');
addItem('Object','Skull','Data/Objects/Environment/Bones/DogSkull.xml','skull.png');
addItem('Object','Leg Bone','Data/Objects/Environment/Bones/DogLegBone.xml','boneleg.png');
addItem('Object','Arm Bone','Data/Objects/Environment/Bones/DogArmBone.xml','bonearm.png');
addItem('Object','Spine','Data/Items/Collectable/dogbackbone.xml','backbone.png');
addItem('Object','Grave Base','Data/Objects/Environment/DogGrave/DogGraveBase.xml','gbase.png');
addItem('Object','Grave Post','Data/Objects/Environment/DogGrave/DogGravePost.xml','gpost.png');
addItem('Object','Plank1','Data/Objects/Environment/DogGrave/DogGraveplank1.xml','g1.png');
addItem('Object','Plank2','Data/Objects/Environment/DogGrave/DogGraveplank2.xml','g2.png');
addItem('Object','Plank3','Data/Objects/Environment/DogGrave/DogGraveplank3.xml','g3.png');
addItem('Object','Plank4','Data/Objects/Environment/DogGrave/DogGraveplank4.xml','g4.png');
addItem('Object','Plank5','Data/Objects/Environment/DogGrave/DogGraveplank5.xml','g5.png');
addItem('Object','Plank6','Data/Objects/Environment/DogGrave/DogGraveplank6.xml','g6.png');
addItem('Object','Plank7','Data/Objects/Environment/DogGrave/DogGraveplank7.xml','g7.png');
addItem('Object','Plank8','Data/Objects/Environment/DogGrave/DogGraveplank8.xml','g8.png');
addItem('Object','Plank9','Data/Objects/Environment/DogGrave/DogGraveplank9.xml','g9.png');
addItem('Object','Dog Broad Sword','Data/Items/DogWeapons/DogBroadSword.xml','wsword1.png');
addItem('Object','Dog Sword','Data/Items/DogWeapons/DogSword.xml','wsword.png');
addItem('Object','Dog Knife','Data/Items/DogWeapons/DogKnife.xml','wknife.png');
addItem('Object','Dog Hammer','Data/Items/DogWeapons/DogHammer.xml','whammer.png');
addItem('Object','Dog Spear','Data/Items/DogWeapons/DogSpear.xml','wspear.png');
addItem('Object','Dog Glaive','Data/Items/DogWeapons/DogGlaive.xml','wglaive.png');
addItem('Object','Macuahuitl Metal','Data/Items/macuahuitl_metal.xml','macahuitl_m.png');
addItem('Object','Macuahuitl Glass','Data/Items/macuahuitl_glass.xml','macahuitl_g.png');
addItem('Object','Rabbit Catcher','Data/Items/DogWeapons/RabbitCatcher.xml','wcatcher.png');
addItem('Object','Bastard Sword','Data/Items/Bastard.xml','wsword2.png');
addItem('Object','Cat Rapier','Data/Items/Rapier.xml','wcatsword.png');
addItem('Object','Cat Gauche','Data/Items/MainGauche.xml','wcatknife.png');
addItem('Object','Buckler','Data/Objects/standard-buckler.xml','buckler.png');
addItem('Object','Land','Data/Objects/Environment/Land/LandChunk.xml','land.png');
addItem('Object','Elm Trunk','Data/Objects/Plants/Trees/Elm/Elm_Trunk.xml','elmtrunk.png');
addItem('Object','Elm Branch','Data/Objects/Plants/Trees/Elm/Elm_Branch.xml','elmbranch.png');
addItem('Object','Elm Leaf Big','Data/Objects/Plants/Trees/Elm/Elm_BigLeaf.xml','elmleafbig.png');
addItem('Object','Elm Leaf Small','Data/Objects/Plants/Trees/Elm/Elm_Leaf.xml','elmleafsmall.png');
addItem('Object','Desert Trunk','Data/Objects/Plants/Trees/Joshua/Joshua_Trunk.xml','joshuatrunk.png');
addItem('Object','Desert Branch','Data/Objects/Plants/Trees/Joshua/Joshua_Branch.xml','joshuabranch.png');
addItem('Object','Desert Leaf','Data/Objects/Plants/Trees/Joshua/Joshua_Leaf.xml','joshualeaf.png');
addItem('Object','Forked Weed','Data/Objects/Plants/Groundcover/ForkedWeed.xml','forked.png');
addItem('Object','Grass Seed','Data/Objects/Plants/Groundcover/GrassSeed.xml','seed.png');
addItem('Object','Ground Cover1','Data/Objects/Plants/Groundcover/GroundCover1.xml','ground1.png');
addItem('Object','Ground Cover2','Data/Objects/Plants/Groundcover/GroundCover2.xml','ground2.png');
addItem('Object','Honey Suckle','Data/Objects/Plants/Groundcover/HoneySuckle.xml','honey.png');
addItem('Object','Wild Grass','Data/Objects/Plants/Groundcover/Grass/WildGrass.xml','grass.png');
addItem('Object','Arena','Data/Objects/Buildings/arena/arena_prefab.xml','arenathumb.png');
replace all the code for "Data/UI/spawner/objects.js" with the above code. that should fix the "objects" portion of the object spawner.

User avatar
Semel
Posts: 31
Joined: Fri Jun 01, 2012 10:58 am
Location: Wales

Re: Overgrowth Linux problems and their solutions/workaround

Post by Semel » Mon Jan 06, 2014 5:58 pm

Hi, I'm on Ubuntu 13.10 and I can't seem to get the item browser to load an external object, when click on the icon it does nothing :(
In game 'Item Browser' 'Load external object' fail
In game 'Item Browser' 'Load external object' fail
Does anybody know if there's a work around for this?

User avatar
last
Posts: 2154
Joined: Fri Jan 07, 2011 7:02 am
Location: Estonia

Re: Overgrowth Linux problems and their solutions/workaround

Post by last » Tue Jan 07, 2014 5:17 am

You , there is. You can download my item browser mod from sum launcher. It should be under fixes and expansions. look for o2 tab mod.

User avatar
Akien
Posts: 20
Joined: Mon Jan 05, 2009 6:57 pm
Location: Denmark
Contact:

Re: Overgrowth Linux problems and their solutions/workaround

Post by Akien » Tue Jan 21, 2014 12:13 pm

Smeat wrote:Setting LC_ALL=en_US fixed the black textures for me.
But in some Levels (e.g. Desert Outpost) I get a segmentation fault: [snip]
Awesome! I had never been able to start a level before, though I tried a lot of potential fixes and workarounds. I couldn't imagine it would simply be a locale issue.

@David: Please look into this, I think lots of Linux users are affected by this (most probably, all people with exotic locales such as... something else than English :wink:).

@Smeat: I have no segfault anymore in Desert Outpost now than I'm prefacing the Steam command with LC_ALL=en_US. Have you tried to empty your OG cache (using SUMLauncher)? From what I've seen, without LC_ALL=en_US, OG generates corrupted cache files when loading a level for the first time.

bzar
Posts: 10
Joined: Sat Oct 29, 2011 2:41 am

Re: Overgrowth Linux problems and their solutions/workaround

Post by bzar » Tue Jan 21, 2014 1:29 pm

Any Arch Linux 64bit success stories? I'm still getting the sound effect loading errors I posted about earlier. Tried installing through steam as well for giggles.

gnurdux
Posts: 48
Joined: Sun Mar 04, 2012 6:24 am

Re: Overgrowth Linux problems and their solutions/workaround

Post by gnurdux » Thu Jan 23, 2014 3:09 am

I have it working mostly fine on Arch Linux 64-bit...

bzar
Posts: 10
Joined: Sat Oct 29, 2011 2:41 am

Re: Overgrowth Linux problems and their solutions/workaround

Post by bzar » Thu Jan 23, 2014 4:01 pm

Encouraged by your success I tried again. Sure enough the problem was in my sound setup. After some fiddling with my ~/.alsoftrc everything seems to work now. I did try everything I could think of back when I posted about the problem, but possibly something else has changed meanwhile. I'm just happy to get back to whacking some bunnies :)

pumpernickel
Posts: 84
Joined: Thu Jan 02, 2014 9:28 am
Location: North Rhine-Westphalia, Germany

Re: Overgrowth Linux problems and their solutions/workaround

Post by pumpernickel » Thu Jan 23, 2014 4:46 pm

Just a heads up, latest update (a205) appears to have broken the linux version.
viewtopic.php?f=13&t=25081#p211588

Afaik the only fix is to reinstall a204, so don't delete the overgrowth-a204-linux.sh, it doesn't seem to be available on humble any more.

User avatar
Surak
Posts: 349
Joined: Sun Sep 20, 2009 3:27 pm
Contact:

Re: Overgrowth Linux problems and their solutions/workaround

Post by Surak » Sat Jan 25, 2014 6:53 am

pumpernickel wrote:Just a heads up, latest update (a205) appears to have broken the linux version.
viewtopic.php?f=13&t=25081#p211588

Afaik the only fix is to reinstall a204, so don't delete the overgrowth-a204-linux.sh, it doesn't seem to be available on humble any more.
It is still possible to download a204 here: viewtopic.php?f=13&t=20406

Luckily all alphas are archived.

chrisxy
Posts: 17
Joined: Mon May 28, 2012 6:49 am

Re: Overgrowth Linux problems and their solutions/workaround

Post by chrisxy » Sat Jan 25, 2014 4:35 pm

I am trying to run the version from steam with mesa drivers and I am very confused.

I get the error "Macro names starting with "GL_" are reserved." when trying to start a map. So I ran it with

Code: Select all

MESA_GLSL=dump $HOME/.local/share/Steam/ubuntu12_32/steam-runtime/run.sh ./Overgrowth.bin.x86
This is one of the shaders that fail to compile:

Code: Select all

GLSL source for vertex shader 5:
#define GL_ARB_sample_shading_available
#define VERTEX_SHADER
#define BAKED_SHADOWS
#define GAMMA_CORRECT
uniform vec3 light_pos;
uniform sampler2D tex0;
uniform sampler2D tex1;
uniform samplerCube tex3;
uniform sampler2D tex4;
varying vec3 normal;

void main()
{    
    normal = normalize(gl_Normal);
    gl_Position = ftransform();
    gl_TexCoord[0] = gl_MultiTexCoord0;
} 

GLSL shader 5 failed to compile.
GLSL shader 5 info log:
0:1(10): preprocessor error: Macro names starting with "GL_" are reserved.
Now what is #define GL_ARB_sample_shading_available? This is not something that comes from the shaders in Data/GLSL, that is something a preprocessor in overgrowth is adding or so?

Well, I get it

Code: Select all

./cubemapobjitem.frag:#ifdef GL_ARB_sample_shading_available
./cubemapobjitem.frag-#extension GL_ARB_sample_shading: enable
./cubemapobjitem.frag-#endif

Code: Select all

./object_frag.glsl:#ifndef GL_ARB_sample_shading_available
./object_frag.glsl-#define CALC_MOTION_BLUR \
./object_frag.glsl-    if(stipple_val != 1 && \
./object_frag.glsl-       (int(mod(gl_FragCoord.x + float(x_stipple_offset),float(stipple_val))) != 0 ||  \
./object_frag.glsl-        int(mod(gl_FragCoord.y + float(y_stipple_offset),float(stipple_val))) != 0)){  \
./object_frag.glsl-        discard;  \
./object_frag.glsl-    }
./object_frag.glsl-#else
./object_frag.glsl-#define CALC_MOTION_BLUR \
[...]
But the specification says:
macro names. All macro names prefixed with “GL_” (“GL” followed by a single underscore) are also reserved.
http://www.opengl.org/registry/doc/GLSL ... .30.10.pdf
So you can't just #define it. First the #version debacle, now this...?

Square++
Posts: 1
Joined: Thu Mar 06, 2014 8:58 am

Re: Overgrowth Linux problems and their solutions/workaround

Post by Square++ » Thu Mar 06, 2014 9:05 am

Thanks, That's helped me a lot. :mrgreen:

tommydrum
Posts: 2
Joined: Thu Dec 26, 2013 2:16 am

Re: Overgrowth Linux problems and their solutions/workaround

Post by tommydrum » Wed Apr 02, 2014 1:09 pm

chrisxy wrote:
macro names. All macro names prefixed with “GL_” (“GL” followed by a single underscore) are also reserved.
http://www.opengl.org/registry/doc/GLSL ... .30.10.pdf
So you can't just #define it. First the #version debacle, now this...?
Yea this is the exact problem were all running into here.. The .frag/.vert system he has going on just likes to hate us. Well if someone posts a workaround, I will make/post a bash script as I did (under Kcool) from last one.

Post Reply