Not logged inOpenClonk Forum
Up Topic General / Help and Questions / Can't build OC on windows
- - By roboclonk Date 2022-07-20 20:20
Hey there,

the last few days I tried to get all the dependencies that are listed on GitHub and used Cmake to create the VS solution. I had a lot of problems configuring the dependencies and it still isn't working properly.
I remember a tutorial that was listed in the Developers section on this website which helped quite a lot, but it isn't available anymore. Does anyone have a backup of it or could help me getting OC to build?
I'm sure I messed something up with my deps decause VS complains about unresolved symbols.. ^^'

thanks
Reply
Parent - - By Zapper Date 2022-07-21 15:07
We had a tutorial for building with Windows in the wiki, but the wiki is still broken :/

Fortunately it's available on the internet archive!
http://web.archive.org/web/20210331202010/https://wiki.openclonk.org/w/Building_with_Windows

Does that help?
Parent - By roboclonk Date 2022-07-21 16:00
Yes, this page is exactly what I was looking for, thanks.

> Does that help?


I'll follow the tutorial and tell you then. :)
Reply
Parent - - By roboclonk Date 2022-07-21 19:34
Hmm, the links to the dependencies aren't working. At least I know from the tutorial, that there has to be a "deps" folder inside my OpenClonk folder. I found some prebuild libraries here on the forum, but I'm not sure if they can be used. And Cmake won't find epoxy, even though I got the pre-build libraries from here and put them inside the deps folder. (I tried different hierarchies: deps/epoxy.lib; deps/epoxy/lib/epoxy.lib; etc)
Reply
Parent - - By Zapper Date 2022-07-21 22:09
Hmmm, I found this here in my Download folder. The date is from 2015-10-29. I am not sure whether the dependencies changed afterwards, so proceed with caution. But maybe it gives some pointers about what you are looking for.

Filename: openclonk-deps-vs140-amd64-easy2.7z
SHA1: 2bd7ec9161f80ba47990064e465b414659de6f79
MD5: e6692512ffb24e3dc08e8f0b41bbadf1
Link: https://box.fu-berlin.de/s/nemt7FTJNddbi73
Parent - - By roboclonk Date 2022-07-22 00:08
Thank you very much! That helped. Finally got a build that is working. I put epoxy and curl in the deps folder as well and needed a zlib1.dll, that I could get from the latest snapshot.

There are still some problems though. I can't see any players in the players menu and can't create new ones without crashing it. Not sure if this is my fault setting it up or the latest repository state has a bug, hm
Reply
Parent - - By Zapper Date 2022-07-22 19:45
Hmm, in the version I still had lying around (probably from 2020-07-26, before the commits by Luchs) it works for me.
But unfortunately I cannot simply rebuild the newest version, because my toolchain has changed a bit :/

Do you get a crash dump in the log file with more information?
Parent - - By roboclonk Date 2022-07-23 10:42
I tried to build with your latest commit, but it is the same problem. So it seems my dependencies are still wrong somewhere.
The crash happens inside the zlip library. The log says [11:37:33] Error loading player file from Rob.ocp: Error opening group: OpenRealGrpFile: Cannot open standard file
I'm building for Win64

Could my .dll's still be wrong? And do you have your build files in a separate folder or inside the cmake source folder?
Reply
Parent - - By Zapper Date 2022-07-23 14:14
Hm, yeah, sounds like an issue with the library?

I have the build files in another directory (OpenClonk/bin) and symlink the .exe from the OpenClonk/planet folder.

It feels a bit weird to upload executable files to the internet for other people to download, but here. This is the zlib1.dll from my /planet folder.
Since I find matches for the hashes and zlib1.dll through Google, I assume that's still an original file I got from somewhere.

Filename: zlib1.dll
SHA1: 65db52c270bc8f1e9435d95456da9f1e45e74fd9
MD5: cb0577e362e193cad14c3d23c40c30d4
Link: https://box.fu-berlin.de/s/MEE8Y4zHBnqksA5
Parent - - By roboclonk Date 2022-07-23 23:14

> It feels a bit weird to upload executable files to the internet for other people to download


I mean you're providing a library, like before. I think that's quite a common thing to do ^^

Unfortunately it doesn't work with your dll either. It is so weird. I even downloaded an older cmake and visual studio now to be at the same state as the tutorial, but it didn't change anything other than that SDL became a required dependency as well (that I could get from the internet).

Cmake also says these libraries couldn't be found (even before my downgrade). They're not marked es required though:
Could NOT find TinyXML (missing:  TinyXML_LIBRARY TinyXML_INCLUDE_DIR)
Could NOT find READLINE (missing:  READLINE_LIBRARY READLINE_INCLUDE_DIR)
Could NOT find GTK3 (missing:  GTK3_INCLUDE_DIR ............... GTK3_GDKPixbuf_LIBRARY gthread gio gobject glib)

and it compiles without them and I can start the game but just can't see my players nor create new ones. The list is just empty, even if there is player data inside my appdata folder.

Another weird thing is, that I have to specify the include and library path inside cmake manually. Otherwise they won't be found at all. Which shouldn't be that way. Or at least, the tutorial also doesn't mention something like that.
I created these two entries in cmake:
CMAKE_INCLUDE_PATH = path to deps/include folder
CMAKE_LIBRARY_PATH = path to deps/lib folder

Ah, and these are also not found:
Looking for vasprintf
Looking for vasprintf - not found
Looking for C++ include unistd.h
Looking for C++ include unistd.h - not found
Looking for C++ include execinfo.h
Looking for C++ include execinfo.h - not found
Looking for C++ include poll.h
Looking for C++ include poll.h - not found
Looking for C++ include sys/inotify.h
Looking for C++ include sys/inotify.h - not found
Looking for C++ include sys/timerfd.h
Looking for C++ include sys/timerfd.h - not found
Looking for C++ include sys/socket.h
Looking for C++ include sys/socket.h - not found
Looking for C++ include sys/eventfd.h
Looking for C++ include sys/eventfd.h - not found
Looking for C++ include sys/file.h
Looking for C++ include sys/file.h - not found
Looking for C++ include files X11/Xlib.h, X11/extensions/Xrandr.h
Looking for C++ include files X11/Xlib.h, X11/extensions/Xrandr.h - not found

But cmake or vs doesn't complain
Reply
Parent - - By Zapper Date 2022-07-26 22:50
Hmm.. the missing things look fine. It's Linux, Mac and maybe also the windows editor (GTK3).
It should also not hurt to specify the cmake paths yourself..

And everything else except the players work? Can you open the scenario list and navigate into a scenario folder? Does the "Mods" dialogue in the main menu work for you?
Parent - By roboclonk Date 2022-07-27 21:53
Yes, everything. I can't start a scenario because no player is selected though, but credits, mods, scenario list, network view works.
Reply
Parent - - By Luchs Date 2022-07-29 17:07
There are updated dependency packages linked here that are used for the snapshot builds.
Parent - - By roboclonk [de] Date 2022-08-02 19:57
Yes! It works. Thank you :)
Reply
Parent - - By Anonymous [it] Date 2022-08-04 16:16
Thanks to working on OpenClonk, We all players are looking forward to seeing new updates for this great coop survival game from years! You are our hope! :-D

We love OpenClonk!
Reply
Parent - - By Zapper Date 2022-08-06 10:49
It's great to hear that the fire is still burning :D
Parent - - By Anonymous [it] Date 2022-08-06 13:13
Thanks for all past work, We are waiting for new game mechanics expansion for a challenging survival complexity.
This is the best game of its genre (there aren't other games 2D like this), that works very well on coop with friends!

The strong point of the OpenClonk is the environment dynamics physics like trees growing, floods, fires, earthquakes etc.. the vivid nature is a lot engaging! Excellent work in this aspect! :-)

It need a bit of expansion on survival things, more objects, more production, more dangers, more materials, biomes for the exploration and enemies and procedural worlds for infinite gameplay and exploration with not-predictable environment and always different.
It would be nice to give more importance to the house with the purpose of shelter from the dangers of the night and bad weather (night = more and more dangerous enemies spawn?).

A survival mode would be fantastic, where the world is very large and procedural, to carry on a game over many days with friends and save it, no goal is needed here. (SURVIVAL MODE no rules, only survive on a more challenging environment)

It would be a real shame if this project were abandoned, as it is one of a kind and a huge effort has already been put into developing it to date. Perhaps you should facilitate the entry of new developers, explaining how to build the game and all the resources to understand the ecosystem underneath and the engine.

P.S. the networking game is a bit laggy, this need a bit of polish.

Thank you so much guys! <3
Reply
Parent - - By Zapper Date 2022-08-08 08:56
Great to hear that and I agree completely on nearly all points :D

One thing first:

>P.S. the networking game is a bit laggy, this need a bit of polish.


There are different network modes for different situations (that you can switch between in the game with a menu on F3 or F4 or so). The default mode works best if all players have a relatively decent connection. There's also the "Central control mode" which works best if the host has the most powerful connection.
There is also the "Presend" value that controls how snappy the game feels with a tradeoff on how fast the connection has to be (1 for LAN games, 2-3 for very fast internet connections, 4-5 to try for laggy connections).

I agree that the environment is the most lacking thing and new challenges would be the highest priority things on my list.

To try that out, I wrote a small animal AI to make mining more interesting.
You can try that out here if you want, but I am not sure whether it needs the most recent OpenClonk beta or the last release version (I simply forgot :D ):
With the beta you can click "Install with OpenClonk". With the old version, you have to scroll down on that page and download the parts manually and put them into your Clonk folder:
https://mods.openclonk.org/uploads/21c9e9697c6848ffb1b5dcbf9bf7a944

We also experimented with allowing players to build bigger shelter structures around their settlement, which was never fully integrated into the game.
https://github.com/TheThow/OC-Blocks
A screenshot with some parts of it: https://forum.openclonk.org/topic_show.pl?pid=32275#pid32275

And I started work on a survival map once, but it never reached playable state as well... :D
https://github.com/walachey/openclonk-survival
Parent - - By Anonymous [it] Date 2022-08-08 13:42
Thanks for the replies! :-)

The environment is already promising, ok it can expand and improve (especially with the addition of various animals AI),
but the current energy needs of buildings, the production of materials that require other materials is beautiful to play, so being able to also have to go hunting or defend against constant threats would make OpenClonk perfect!

I have played "Valheim" recently and reminds me OpenClonk but in 3D. Some mechanics that I found beautiful from which I would like to suggest to improve OpenClonk:

1) NEEDS TO EAT: the "food", to maintain the health high, there is a need to eat cooked meat or fruit / vegetables, with possibility of cultivating the land.
Each food eaten has a limited time of health bonus, after this time your health is reduced. This mechanic prompting the player to eat again, and to search and store the food.
The malnutrition can be very dangerous, death can occur with a simple fall or a bee sting.

2) THE SHELTER: is expandable and is necessary for survival. Much of the gameplay revolves around improving the shelter over time and building new shelters when the resources begin   to run out.

3) THE NIGHT: becomes dangerous, the enemies become more dangerous and numerous. This convinces the players to take refuge in the shelter and defend it.

4) THE WEATHER: can be dangerous too, cold, wet, windy they can make life risky and need to take refuge in the shelter.

5) PROCEDURAL MAP: every new play create a new map with various biomes and threats.

6) THE DEATH: cause respawn in the shelter, the players can mark the main shelter for respawn.

7) KNOWLEDGE EXPANSION: the discovery of new materials leads to the unlocking of new buildings and improved tools and technology. This convinces the players to explore the map and releases gameplay news over time.

8) TOOLS DAMAGE: chopping wood will damage the ax, this forces players to go and repair the ax in the shelter (giving greater importance to the shelter).

The gameplay flow is: Exploration / Mining-Gathering / Building / Upgrades / Defense from Threats. More or less equally distributed.
OpenClonk is very similar, but can be improve the last three points.

I obviously know that the project is created by volunteers, all of this is just an exchange of ideas between enthusiasts ;)

For me OpenClonk could have only one survival mode, deep and interesting that encompasses all the essence of Clonk, I would concentrate my efforts to improve this.

The campaign mode is interesting but there is no replayability once finished and requires a lot of development effort, for the scripted events.
The worlds maps are very interesting with all challenging objectives.
But in my opinion something free that works by itself is more interesting, without forced rules, because it is nice to have the freedom and creativity to live in the living world of OpenClonk. Obviously it is not intended to replace world maps and campagn mode, but can combine the various challenges in a single mode.

I have played all Clonk games and this challenges frammentation for me can be unified in a special mode for OpenClonk, to make the must have coop game. :-D

P.S. Thanks for the links very interessing!
The various network modes are very good, but a bit "difficult to understand" for casual players (which is better in my situation?), maybe an further small description of networking modes can helps casual players to get the smoothest gameplay possible ;)


Thank you for your passion and your time!
Make Clonk great again!
Reply
Parent - - By Zapper Date 2022-08-19 08:54
Hey, sorry for the late reply. The forum had some problems :/

>The various network modes are very good, but a bit "difficult to understand" for casual players (which is better in my situation?), maybe an further small description of networking modes can helps casual players to get the smoothest gameplay possible


In the "central" mode, every time you press a key, that key is sent to the host (the one who opens the lobby) and then the host sends the key to the other players. That works best if the host has a very strong connection to all others.

In the "decentral" mode, every time you press a key, it is directly sent to all other players. That's usually a bit better if all players have good connections to everyone else. But that also means that if a player has a bad connection, ALL others have to wait for that connection all the time.
Also, it can happen that two players have bad connections between them BUT a good connection to the host. In those cases, the "central" mode might be better.

And regarding the ideas, yes I like them as well. I actually already implemented at least food and hunger, a shelter, a procedural map with biomes and tools damage ;)

Buuuut, I have not continued with that for some years and I also don't see myself working on that at least in the near future.. All development pretty much fell asleep because most of the regular developers changed priorities and do something else now :/
Parent - By Anonymous [it] Date 2022-08-19 19:34
Thanks for the explanations ;)

We are so sorry that the development has fallen asleep, because up until before it was great :-(
Reply
Parent - By Anonymous [it] Date 2022-08-19 19:34
Thanks for the explanations ;)

We are so sorry that the development has fallen asleep, because up until before it was great :-(
Reply
Parent - - By roboclonk Date 2022-08-21 08:38
Hey, thank you for your optimism. I'd like to work on OpenClonk, but to make good progress, there should be more developers working on OC. ^^'

I like your ideas, they surely make up for many great scenarios. But there are a few things I'd like to have in OC before adding new content. I actually have some ideas what the next update could contain. But this is just my opinion. I never really contributed to OC before.

Here are a few things:
- Make split-screen work again
-> Improve controller support (necessary for split-screen)
-> Adjust the UI to work with the controller as well (Also the main menu)
- Finish the integrated Mods page. I can't see/play the downloaded mods inside the game. Not sure what is missing besides that.
- Overhaul on graphics. Replace many static objects with detailed sprites that use normal maps for lighting.
-> Finish OpenClonk Blender Addon (I already did some work on that to make exporting of sprites and animated clonks easy)
- Improve animations and graphics of clonks and other non-static objects
- ... And I don't really know what were other parts for 9.0 that need to finished/adressed, since as I said, I didn't contribute to OC before. ^^
Reply
Parent - By Anonymous [it] Date 2022-08-29 08:55
Oh yes, splitscreen and gamepad support it would be great!

Playing it on tv with 2 xbox controllers would be a dream :-D
Reply
Up Topic General / Help and Questions / Can't build OC on windows

Powered by mwForum 2.29.7 © 1999-2015 Markus Wichitill