Dev meeting minutes 2012-05-21

Dev meeting minutes 2012-05-21

Minutes of the meetings between Spring developers are archived here.
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Dev meeting minutes 2012-05-21

Post by abma »

Date: 21-5-2012
Present: jK, abma, zerver

Welcome

<abma> hey!
<abma> enough people for a meeting, wehee! :D
<zerver> ya
<abma> zerver: did you see that pull request? https://github.com/spring/spring/pull/37
<zerver> k, thanks
<abma> do you want notifications about those + messages about comments? if so, you need to be in the ..erm team-spring (?) group

Release plan
<abma> [LCC]jK: what do you think, is it worth to make a testing release and target a real release?
<abma> not sure if its worth the time, as it seems like we all are currently very short in time...
<jK> I wanted a release in <1month
<jK> too bad hoij isn't there
<jK> got a cmake problem
<abma> hm, what doesn't work?
<abma> i'm not good in cmake but i did some stuff, too
<jK> I have problem with cmake's fucking stupid caching
<zerver> Lots of stuff on mantis atm, but other than that I see no problem with making a release
<jK> FindPackage caches results, very bad when you want to use static & dynamic packages in the same project
<jK> only 3 spring-mt things on mantis
<abma> most bug reports are about spring 88, so i see no real problem, too
<abma> i have no idea what you want to do, but it should be possible to use a if / else with (if i remember right) PACKAGE_FOUND or HAVE_PACKAGE...
<jK> "very bad when you want to use static & dynamic packages in the same project"
<jK> so no PACKAGE_FOUND & HAVE_PACKAGE won't help anything here
<abma> aah, got you
<jK> problem is I need to call FindPackage _twice_ (once for dynamic & once for static library)
<abma> i guess you've to write your own find_package then
<abma> afaik cmake uses the first package it finds
<jK> FindPackage is written in c++ or what ever language cmake uses natively
<jK> so it's near impossible to write it yourself
<jK> (it calls all those FindMyFooBarLibrary.cmake script which are scattered across your whole hdd)
<jK> *scripts
<abma> you mean something like /usr/share/cmake-2.8/Modules/FindLua50.cmake ?
<jK> I really hate cmake ... (mainly how it handles library linking)
<jK> yup
<abma> http://www.cmake.org/pipermail/cmake/20 ... 41326.html
<abma> but thats not a clean solution :-/
<abma> maybe built lib/lua twice / shared + static and link to that
<abma> + pm hoijui :D
<jK> abma, I know already _how to find static libraries_
<jK> problem is that cmake now caches the results in all those fucking function
<jK> +s
<abma> i meant: write one find_library for static and one for shared...
<jK> all those functions aren't written in cmake
<jK> they check folders across your whole hdd
<jK> something that is pure evil if you want to do that in cmake scripting language
<jK> not to forget that the caching goes down to the lowest functiosn
<jK> so setting SET(CMAKE_FIND_LIBRARY_SUFFIXES .a) won't do anything when you called the function already before without it
<jK> and neither any foobar(my_library_name) would ever work
<abma> ouch, yep. didn't think about that :-/
<abma> so only way i see is, to compile lua yourself...
<jK> nothing lua related
<abma> what lib do you want to link then?
<jK> any
<jK> engine static build
<jK> i already have a function that converts most cmake library filenames to the static ones
<jK> just to find out that cmake is a pain in the ass and handles libraries just in the worst way you may think of
<jK> so something the input of TARGET_LINK_LIBRARIES() can be the library _filename_, the project's internal object name (e.g. all those libaries spring builds itself and links: sound, lua, streflop, ...) AND gcc/ld _arguments_ (e.g. "-lfreetype")
<jK> *sometimes
<jK> only the first can be easily transformed to static linking, the "-lfreetype" ones are just impossible to convert
<abma> hm, can't the buildsystem take care of that? like only install static libs?
<abma> what are you going to do?
<abma> the first question comes last :-/
<jK> <[LCC]jK> engine static build
<jK> and cmake is the buildsystem
<jK> and it fails horribly
<abma> hm, damn... i should take care a bit more about the correct words...
<abma> i mean the building host
<abma> as it seems the static linked file will be downloaded by others
<jK> o_O
<abma> or did i horrible fail in understanding the problem?
<abma> sorry, i'm a bit tired already
<jK> yup
<jK> problem has nothing to do with the libraries at all
<jK> the problem is pure cmake to make usage of them
<abma> then maybe my idea was a bit weird: remove all shared libs from the system :D
<jK> it's neither a unsolvable problem to _only_ use static libraries in one project
<jK> the problem is when you want to use shared & static ones in one cmake project
<abma> why do you want to use both? :D
<abma> damnit
<abma> i seem to fail in ask the correct questions
<jK> cause I want to have a static-linked buld next to all others w/o needing to create a new cmake project
<abma> why is the shared version still needed?
<jK> cause static linked builds have disadvantages
<abma> hm: static linked spring is for redistribution: build it only on the buildbot with some parameter for example, uses these files to redistribute
<abma> and shared spring is build from the packagers?
<jK> then I would still have to create a totally new cmake project just to compile from static libs
<jK> a damn lot of work
<abma> no, just a different buildslave with static libs
<abma> ok, thanks for explaining
<abma> i guess now i have to make minutes because i couldnt help :D
<jK> lol

conclusion: we want to make a release soon, jk tries to make a static build of spring but has some cmake problems... please HELP! (maybe hoijui?!)

pr-downloader
<jK> btw would be good if pr-download gets build by koshis buildclient
<jK> +er
<abma> only curldev libs are needed
<abma> add them to mingwlibs or somewhere else?
<abma> mingwlibs would be easiest but maybe not cleanest solution
<jK> do they provide prebuild ones?
<abma> seems so, yep
<abma> but only "inofficial" ones... but seems to be ok
<abma> if not, i've already built them on my own...
<jK> then push them just into mingwlibs
<abma> ok
<abma> add it to the installer as well then?
<abma> hmm, adding it similar like rapid would make sense

conclusion: pr-downloader will be added to the win32 build / installer (by adding curl libs to mingwlibs)

dual lua states
<zerver> btw regarding previous discussion about dual lua states etc, I found that the batching also has some annoying side effects
<zerver> for example, conditions may change before the batch is run, so that some calls you would expect to succeed will fail or return nil
<jK> we said that in a meeting before you even added it
<zerver> okay, I forgot it then
<jK> and said to avoid most of these issues, you would need to force clearing the batch queue in specific events
<zerver> yes, may be doable unless many events are affected
<zerver> clearing the batch comes at a cost
<jK> e.g. when a UnitDestroyed is added to the queue, and you still got a UnitCreated in the queue is must process the batch queue w/o delaying
<jK> yeah
<jK> but it will always faster than w/o batching
<jK> +be
<zerver> faster than single state and no batch, yes. slower than dual states
<jK> incorrect, but I am tried of this
<jK> told you now ways to often how things work
<zerver> just wanted to point out that dual states does not have these problems, but other problems (complexity) instead
<zerver> no need to discuss any more
<jK> :)

conclusion: uhm... something is wrong with the luastates in spring-mt...


note: we had no real agenda this time, so its maybe a bit messy.
User avatar
Jools
XTA Developer
Posts: 2816
Joined: 23 Feb 2009, 16:29

Re: Dev meeting minutes 2012-05-21

Post by Jools »

abma wrote: note: we had no real agenda this time, so its maybe a bit messy.
How is the agenda produced? There are tons of things that need fixing...
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Dev meeting minutes 2012-05-21

Post by abma »

Jools wrote:How is the agenda produced?
only topics that need discussions between developers gets to the agenda, bugs mostly don't need discussions. things like "i have a problem here, there are multiple solutions, what to do?" gets into the agenda, stuff like "when i build this unit, create that unit, spring crashes" not.

There are no rules, what will be discussed... the only recurring topic is "Release plan" :)
There are tons of things that need fixing...
things that are not on mantis? then please report it there...
User avatar
Jools
XTA Developer
Posts: 2816
Joined: 23 Feb 2009, 16:29

Re: Dev meeting minutes 2012-05-21

Post by Jools »

I meant more general kind of issues, not operative/maintenance type. Questions such as:

* where do we see ourselves in 5 years? I'm sure the team must have a strategy, is it being followed, are we happy with the development during the last year?

* Can we build an installer package for the whole game?

* How can we make the game better (meaning the simulation), what is it good at at the moment, what is it bad at. What is the return on effort to enhance a certain part of the package? Does there exist such work which will not yield any large benefits?
User avatar
FLOZi
MC: Legacy & Spring 1944 Developer
Posts: 6240
Joined: 29 Apr 2005, 01:14

Re: Dev meeting minutes 2012-05-21

Post by FLOZi »

Spring is not a game.
gajop
Moderator
Posts: 3051
Joined: 05 Aug 2009, 20:42

Re: Dev meeting minutes 2012-05-21

Post by gajop »

FLOZi wrote:Spring is not a game.
rename it SING then
User avatar
SinbadEV
Posts: 6475
Joined: 02 May 2005, 03:56

Re: Dev meeting minutes 2012-05-21

Post by SinbadEV »

gajop wrote:
FLOZi wrote:Spring is not a game.
rename it SING then
Spring PRoject Is Not a Game
User avatar
Jools
XTA Developer
Posts: 2816
Joined: 23 Feb 2009, 16:29

Re: Dev meeting minutes 2012-05-21

Post by Jools »

FLOZi wrote:Spring is not a game.
How is that relevant at all?
User avatar
Jools
XTA Developer
Posts: 2816
Joined: 23 Feb 2009, 16:29

Re: Dev meeting minutes 2012-05-21

Post by Jools »

game1
▶noun

1 an activity engaged in for amusement.

■ the equipment used in playing a board game, computer game, etc.

2 a form of competitive activity or sport played according to rules.

■ (games) a meeting for sporting contests.

■ (games) Brit. athletics or sports as a lesson or activity at school.

3 a complete episode or period of play, ending in a final result.

■ a single portion of play, forming a scoring unit within a game.

4 informal a type of activity or business regarded as a game: the dating game.

■ a secret plan or trick: I was on to his little game.

5 wild mammals or birds hunted for sport or food.
Take your pick. I know that spring project (TM) likes to redefine certain words, such as "player", "team" and "game". You can do that, but you make things more complicated for no good reason, and it doesn't change the actual type of activity. You can call ethnic cleansing a "humanitarian disaster", but it still doesn't change what has happened.
User avatar
SinbadEV
Posts: 6475
Joined: 02 May 2005, 03:56

Re: Dev meeting minutes 2012-05-21

Post by SinbadEV »

Jools wrote:
FLOZi wrote:Spring is not a game.
How is that relevant at all?
I think he's referring to:
Jools wrote:[...]* Can we build an installer package for the whole game?[...]* How can we make the game better (meaning the simulation)[...]
That said... picking up on that part of your post instead of forgiving your use of taboo terminology wasn't really fair... from the perspective of the developers, Spring is game engine... they aren't building a physics simulation in a void, they are developing the back-end code for a game... it's just that that game could be any of a number of games.
User avatar
Jools
XTA Developer
Posts: 2816
Joined: 23 Feb 2009, 16:29

Re: Dev meeting minutes 2012-05-21

Post by Jools »

SinbadEV wrote:from the perspective of the developers, Spring is game engine... they aren't building a physics simulation in a void, they are developing the back-end code for a game... it's just that that game could be any of a number of games.
Fair enough, and I don't think that anyone really minds that you get flexible code that you can use for a number of games, such as TA, Pinball, Chess (if I exaggerate), the point is just that how about making the physics simulation well for one game, and then think about expanding when that task has been completed?
User avatar
smoth
Posts: 22309
Joined: 13 Jan 2005, 00:46

Re: Dev meeting minutes 2012-05-21

Post by smoth »

Jools wrote:Take your pick. I know that spring project (TM) likes to redefine certain words, such as "player", "team" and "game". You can do that, but you make things more complicated for no good reason, and it doesn't change the actual type of activity. You can call ethnic cleansing a "humanitarian disaster", but it still doesn't change what has happened.
Spring is an engine. There is no gameplay in spring. There are no models. No units. No maps. No sounds.

it is an engine with some base level logic.
Jools wrote:Fair enough, and I don't think that anyone really minds that you get flexible code that you can use for a number of games, such as TA, Pinball, Chess (if I exaggerate), the point is just that how about making the physics simulation well for one game, and then think about expanding when that task has been completed?
Unfortunately it is done that way and any attempts to generalize functionality are met with rage from absentee ba players who post and seldom actually play these days.
User avatar
Jazcash
Posts: 5309
Joined: 08 Dec 2007, 17:39

Re: Dev meeting minutes 2012-05-21

Post by Jazcash »

SinbadEV wrote:
gajop wrote:
FLOZi wrote:Spring is not a game.
rename it SING then
Spring PRoject Is Not a Game
How about:

Spring Project Really Is Not a Game
User avatar
FLOZi
MC: Legacy & Spring 1944 Developer
Posts: 6240
Joined: 29 Apr 2005, 01:14

Re: Dev meeting minutes 2012-05-21

Post by FLOZi »

Jazcash wrote: How about:

Spring Project Really Is Not a Game
I'm starting to hate you a little less each day, Jaz.
User avatar
Jazcash
Posts: 5309
Joined: 08 Dec 2007, 17:39

Re: Dev meeting minutes 2012-05-21

Post by Jazcash »

FLOZi wrote:
Jazcash wrote: How about:

Spring Project Really Is Not a Game
I'm starting to hate you a little less each day, Jaz.
Good! I think...
User avatar
smoth
Posts: 22309
Joined: 13 Jan 2005, 00:46

Re: Dev meeting minutes 2012-05-21

Post by smoth »

Guy love...
User avatar
hoijui
Former Engine Dev
Posts: 4344
Joined: 22 Sep 2007, 09:51

Re: Dev meeting minutes 2012-05-21

Post by hoijui »

this stuff you mentioned.. like.. general goal(s), where to be in 5 years, ...
this is stuff that only really works with a single, overlooking entity, but the spring dev team is just a group of individuals, that.. by now, use some methodology (mostly meetings) to solve conflicts if their actions overlapp/influence stuff the others do.
each dev has his own view of what is important and what he wants to see done in hte next few years. trying to force all to work on one thing does not work. best you could achieve in theory, is to establish more and more low level standards (code format, very abstract/broad design standards).
User avatar
Licho
Zero-K Developer
Posts: 3803
Joined: 19 May 2006, 19:13

Re: Dev meeting minutes 2012-05-21

Post by Licho »

Were there any attempts at static building engine for linux?
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Dev meeting minutes 2012-05-21

Post by abma »

Licho wrote:Were there any attempts at static building engine for linux?
http://buildbot.springrts.com/builders/ ... logs/stdio
+ some recent commits in the repo....
Google_Frog
Moderator
Posts: 2464
Joined: 12 Oct 2007, 09:24

Re: Dev meeting minutes 2012-05-21

Post by Google_Frog »

I consider Spring to have some gameplay. There are mechanics that most RTS have and that the large games for Spring use. Things like pathfinding and LOS, improvements or configuration options would improve possible gameplay with spring.

If I were able to magically tell everyone what to do in the engine for the benefit of ZK I would focus on these two points:
  • Improve pathfinding. QTPFS looks good but still has issues, so I'll wait for this to be done.
  • Improve ATI compatibility.
I'm sure other people would have other points for their particular projects. I'm not saying 'everyone must follow me'.

The rest of the engine is pretty good. There are some engine tweaks that would enable me to implement some interesting gameplay with lua but it's fairly low priority. Also 88.0 actually works so if the next release messes anything up we're going right back to 88.0.
Post Reply

Return to “Meeting Minutes”