Darwinbots Forum

Code center => Suggestions => Topic started by: Numsgil on September 28, 2005, 04:26:41 PM

Title: Call to Programmers
Post by: Numsgil on September 28, 2005, 04:26:41 PM
I am issuing a formal call to all DB'ers who know anything about programming.  There are tasks I want done but do not have time for myself.

To anyone interested in trying their hand at DB programming: I will personally help you get acquainted with the code.  I may even release a code tutorial at some point on the wiki.

Once 2.4 is out, there are about 50 small things I want to see worked on.  To do them all myself means about a month or even two.
Title: Call to Programmers
Post by: Botsareus on September 29, 2005, 05:19:08 PM
THIS LINE IS BIZZY -OPERATORS ARE STANDIKNG BY EVOLVING FIRSTBOT AND GOING TO COLLAGE. PLEASE WAIT. plasmic007.tripod.com > music > Terminator's Dance...



ok ok , maybe I'll find time if its below masters math/ physics  level I can handle it I think. (hey lest time don't say that I did not help at all)

P.S.

heh,
Quote
know [ I ] anything [ / I ] about programming
Title: Call to Programmers
Post by: Zelos on October 05, 2005, 01:42:43 PM
I got VB but I dont know how to use it or where to find how I use it, could anyone of you link me to a site or something that tells all the commands that are possible to use? if I find out how to use VB I might be able to help.
Title: Call to Programmers
Post by: Numsgil on October 05, 2005, 03:32:33 PM
A good place to start is searching for "visual basic tutorial".

Which is where I found this (http://www.vbtutor.net/vbtutor.html).
Title: Call to Programmers
Post by: PurpleYouko on October 05, 2005, 03:59:46 PM
I'm going to borrow that link for the new MMORPG forum.  :D
Title: Call to Programmers
Post by: Ulciscor on October 05, 2005, 04:39:50 PM
I'll give some coding a go!!
Title: Call to Programmers
Post by: Numsgil on October 05, 2005, 04:55:12 PM
Awesome!

One of two things needs to be worked on in my mind:

1.  I want somebody to start working on some sweet ass graphs.  It doesn't sound exciting, but I think some cool graphs would totally kick the program up a notch, and it'd be a good, relatively safe way for someone to get their feet wet, so to speak.

For graphs I'd like the user to be able to set the x and y axis from a list of things.  So you can do mutations per DNA length.  Total mutations per cycle, etc.  Mutations per bot nrg, etc.

I'd like the user to be able to export data in a form that can be read into and manipulated by Excel.

I'd like the user to be able to toggle between bar graphs, line graphs, point plots, and any other form you can think of.

I'd like the user to be able to perform regression analysis on the data inside DB.  Create best fit curves/lines/parabolas/what have you.  Also any other statistics observations anyone can think of.  Perhaps mean and variance/standard deviation analysis.

I want these graphs to look superb.  Excel quality.  The current ones look ameteur.

I want these graphs to be scalable.  So you don't have to wait 1000 cycles to see any lines being drawn in your graph at all.

I want these to be the smoothest, most user friendly aspect of the program.  I want people to marvel at our superb graphs.

2.  Scripts should be fleshed out.  I haven't given this as much thought as the graphs, but basically anything the user can do, given a reason for doing so, the program should be able to do automatically.  This inlcudes things like changing physics constants over time or based on population levels, etc.

Ideally, this would become another kind of language that's similar to the DNA language.  Complex enough to perform some really amazing simulations.
Title: Call to Programmers
Post by: Botsareus on October 05, 2005, 05:01:38 PM
3.) Must be done so Vb does NOT run out of memory.
Title: Call to Programmers
Post by: Numsgil on October 05, 2005, 05:04:54 PM
Do you mean do 1 and 2 such that VB doesn't run out of memory, or make the current program work such that it doesn't run out of memory (that is, are you warning against a potential bug, or alerting us of a new bug?)

I don't think either 1 or 2 would be particularly memory intensive.
Title: Call to Programmers
Post by: PurpleYouko on October 06, 2005, 10:43:14 AM
Why not export it directly into excel? VB does a great job of creating Excel files and moving data into them.
Title: Call to Programmers
Post by: PurpleYouko on October 06, 2005, 10:45:22 AM
Quote
2. Scripts should be fleshed out. I haven't given this as much thought as the graphs, but basically anything the user can do, given a reason for doing so, the program should be able to do automatically. This inlcudes things like changing physics constants over time or based on population levels, etc.

I have a few ideas on improving the scripts. Particuarly expanding the way they are managed. Think Starcraft or Warcraft3 scripts.  :)
Title: Call to Programmers
Post by: Botsareus on October 06, 2005, 09:09:14 PM
We are getting close to that evil memory limit vb has...  :(

I think it has it roots in complexity of flow. You may recall what happend when you had too mutch controls on the screen?

I dont know maybe all you need is better hardware.
Title: Call to Programmers
Post by: Numsgil on October 06, 2005, 09:42:55 PM
VB has no maximum memory limit that I am aware of.

They do have a maximum control limit per form.  But this can be easily gotten around by using control arrays.
Title: Call to Programmers
Post by: Zelos on October 07, 2005, 09:47:21 AM
sorry nums, but those kind of tutorials have never worked for me, isnt there anysite with the COMMANDS? I learn often faster if I see a list that says "this command do that and that" than I do if someone says "then we type blablabla" sorry but thats how I am
Title: Call to Programmers
Post by: PurpleYouko on October 07, 2005, 09:53:25 AM
I have to agree with you Zelos.
The kind of tutorial I like is one that simply lists all of the keywords and tells you exactly what they do, what parameters are used etc.
Basically a reference book of the language.
Title: Call to Programmers
Post by: Zelos on October 07, 2005, 10:54:21 AM
yes, those are perfect for me, is there anyone PY or could anyone make it?
Title: Call to Programmers
Post by: PurpleYouko on October 07, 2005, 11:15:14 AM
The MSDN help file that comes with  a (real as opposed to pirated) version of VB kind of does this.
It's a bit difficult to navigate though and tends to assume a certain level of knowledge.
Title: Call to Programmers
Post by: Zelos on October 07, 2005, 11:28:14 AM
ive tried to install it, but it ask for somekinda cd, is it windows cd it ask for?
Title: Call to Programmers
Post by: Numsgil on October 07, 2005, 12:56:09 PM
No, it's a MSDN CD that comes with your IDE (Integrated development environment) generally.

You can't find illegal copies of MSDN, beleive me I've tried.  They just don't exist.
Title: Call to Programmers
Post by: Zelos on October 07, 2005, 01:21:57 PM
oki, :( does anyone know anywhere else I can get a list of all commands?
Title: Call to Programmers
Post by: Numsgil on October 07, 2005, 01:28:53 PM
There's sort of an online MSDN (http://msdn2.microsoft.com/en-us/library/sh9ywfdk(en-US,VS.80).aspx).
Title: Call to Programmers
Post by: Zelos on October 07, 2005, 01:57:05 PM
a very nice site, but I cant find the list, where is it in there?
Title: Call to Programmers
Post by: Numsgil on October 07, 2005, 02:15:01 PM
It's a general listing of all commands/functions/things in visual basic.

Do you know how to program?  Like real languages I mean?  Because if not you're not going to figure it out by staring at syntax.  You need a basic amount of knowledge to figure out the syntax listings.  It's sort of a catch-22.

Don't say I didn't warn you: This is a list of all keywords in VB (http://msdn2.microsoft.com/en-us/library/ksh7h19t).

There are other things you can do in the language too.  Just damn explore the site I gave above.

If you want someone to hold your hand and walk you through, what you want is a walkthrough or tutorial.  And I gave a nice one above.
Title: Call to Programmers
Post by: Greven on October 07, 2005, 02:19:34 PM
Just a note, the list Nums has added it for Visual Studio 2005, what most of us use (#include Num ;)) is visual studio 6, and therefore the list is a little to updated... æøå
Title: Call to Programmers
Post by: Numsgil on October 07, 2005, 02:22:09 PM
Note that not all the VB commands/operators/whatever you can find on the site I gave you can be used in VB6.0, the above is really a listing for VB2005, which is newer, and so has new features.
Title: Call to Programmers
Post by: Numsgil on October 07, 2005, 02:22:37 PM
Jinx!  :P
Title: Call to Programmers
Post by: Zelos on October 08, 2005, 01:51:47 AM
rhx, now for some try and error
Title: Call to Programmers
Post by: Zelos on October 08, 2005, 08:15:35 AM
Ive been trying some and this is what ive done yet. It can do simple math, like +/-
power square root, */"/" and even logarithm. But also convert one number in our 10 based system into what that number would be in the other base that is selected, what do you think for first try?
Title: Call to Programmers
Post by: Greven on October 08, 2005, 08:20:22 AM
It is okay, but you need some exception handling, like division by zero, etc. Remember anything that can go wrong in a computer program, goes wrong!
Title: Call to Programmers
Post by: Greven on October 08, 2005, 08:23:08 AM
And I have an idea that the base converter doesnt work 100 %!

159 dont give 105 in base 16, or have I misunderstood something?
Title: Call to Programmers
Post by: Greven on October 08, 2005, 08:26:23 AM
It should give (in your notation) => 9.15 (9F in real hexidecimal) - were each '.' is a seperator for the numbers.
Title: Call to Programmers
Post by: Zelos on October 08, 2005, 10:04:34 AM
I know y it dont, we have only 10 numbers, but ure asking it to use numbers that dont exist, this one made for those lower than 10. but I´ll upgrade it to handle more ones
Title: Call to Programmers
Post by: Greven on October 08, 2005, 10:23:39 AM
No not use numbers that doesnt exists, but to use decimal notation when writing the numbers in another base.

Explain how 105 == 159, explain how I should interprent 105?

9.15 means that 9*16^1 + 15*16^0 = 159 in decimal!
Title: Call to Programmers
Post by: Zelos on October 08, 2005, 10:33:41 AM
yes I know, well its fixed now so it can handle all number bases upto hexadecimal.
the explination is that it want to say 10 and 9
in the new math that would be A9, but it puts them toghater as one, so we see it as 109 but it should be 10 9 (A9)
Title: Call to Programmers
Post by: Numsgil on October 08, 2005, 11:41:59 AM
Well I'm impressed.  I assume then this isn't your first language?  Especially if you know how to convert bases, then you've probably taken a computer class or two.
Title: Call to Programmers
Post by: Zelos on October 08, 2005, 11:48:40 AM
to be honest, this is the first langeage and the computer class I took only told me how to use WOrd/Excewl in ways I already knew. anything else then than have I learned today. But im very very very good in math, so base conversion have I known for quite sometime
Title: Call to Programmers
Post by: Numsgil on October 08, 2005, 11:50:40 AM
Well, as long as you can program, and get things accomplished in DB code, I'm grateful.
Title: Call to Programmers
Post by: Zelos on October 08, 2005, 12:47:08 PM
as it is now I cant accomplish anything, but when I can VB more I´ll helpt some of course.
Title: Call to Programmers
Post by: Numsgil on October 08, 2005, 01:51:55 PM
sweet
Title: Call to Programmers
Post by: Zelos on October 08, 2005, 01:58:02 PM
HEY, thats my line
Title: Call to Programmers
Post by: Numsgil on October 08, 2005, 02:06:20 PM
Haha! Sucker.
Title: Call to Programmers
Post by: Solidus117 on October 04, 2007, 05:00:36 AM
Hi. Long time reader, first time poster

I can help out with programming if you like. I know my asm/c/c++ and can read VB. I'm brushing up on my C sharp now

I can also do algorithm analysis in the meantime if you wish, while I get familiar with C#/.NET/XNA

Thanks.
Title: Call to Programmers
Post by: Numsgil on October 04, 2007, 06:30:56 AM
The C++ code is sort of dead, so it's either going to be Visual Basic or C#, depending on if you want to work on the current code or the future code (Darwinbots 3).  Eric's maintaining the Visual Basic code, so he could probably help get you started there if you want.

With C# and Darwinbots 3, I'd really like to get someone other than me working on the GUI and graphics.  It's an important step so I can start working on the physics, but it's a lot of work.  I'll probably type up a post in the Darwinbots3 subforum explaining the different modules that need to exist.

Or if you're really ambitious you could help me work on the physics engine.  The physics and mathematics involved is pretty intense, though, compared with most other things.
Title: Call to Programmers
Post by: Solidus117 on October 04, 2007, 07:26:48 AM
Quote from: Numsgil
The C++ code is sort of dead, so it's either going to be Visual Basic or C#, depending on if you want to work on the current code or the future code (Darwinbots 3).  Eric's maintaining the Visual Basic code, so he could probably help get you started there if you want.

With C# and Darwinbots 3, I'd really like to get someone other than me working on the GUI and graphics.  It's an important step so I can start working on the physics, but it's a lot of work.  I'll probably type up a post in the Darwinbots3 subforum explaining the different modules that need to exist.

Or if you're really ambitious you could help me work on the physics engine.  The physics and mathematics involved is pretty intense, though, compared with most other things.

I'd rather help you out with the DB-3 work. I can also help you out with the physics if you wish, I'm almost finished my EE degree, so I'm pretty comfortable using vectors and transformations and all that jazz.

As for the GUI and graphics, I'm starting to dive into the Tao bindings and XNA. So I can eventually help with that.
Title: Call to Programmers
Post by: Numsgil on October 04, 2007, 07:05:49 PM
Oh then you rock!  I was thinking of using Tao for the graphics (played around a little with it already), or maybe XNA if they've built a version that runs on non-express studio versions.

I'll write up a post in the Darwinbots3 subforum explaining how to get the code I have and set up dependancies, the architecture I'm persuing, etc.

Have you any experience with unit testing or software system architecture?
Title: Call to Programmers
Post by: Solidus117 on October 04, 2007, 10:57:18 PM
I've had academic/project experience with testing procedures and software management. But yeah, I like evaluation before integration, just makes life easier.
Title: Call to Programmers
Post by: Numsgil on October 05, 2007, 03:00:44 AM
I've set up the repository so everything is ignored properly, placed in the right directories, etc.  I've also placed instructions on setting up the code.  Find it all here (http://www.darwinbots.com/WikiManual/index.php?title=Darwinbots_3).

Try to download the repository and compile the code.  Take careful not of anything that seems wrong or hard to set up as you do so, and report them in the Darwinbots3 forum.  I'm going to be doing my best to make easing into coding on Darwinbots3 as easy as possible for whoever wants to do it.
Title: Call to Programmers
Post by: Solidus117 on October 06, 2007, 10:44:00 AM
Quote from: Numsgil
I've set up the repository so everything is ignored properly, placed in the right directories, etc.  I've also placed instructions on setting up the code.  Find it all here (http://www.darwinbots.com/WikiManual/index.php?title=Darwinbots_3).

Try to download the repository and compile the code.  Take careful not of anything that seems wrong or hard to set up as you do so, and report them in the Darwinbots3 forum.  I'm going to be doing my best to make easing into coding on Darwinbots3 as easy as possible for whoever wants to do it.

Sweet. I'll take a look at it a.s.a.p.

I can start working on in about seven weeks time when I get out of my coursework.
Title: Call to Programmers
Post by: Numsgil on October 06, 2007, 03:15:40 PM
Don't stress yourself out too bad.  Darwinbots has a way of sucking up all your available time
Title: Call to Programmers
Post by: bacillus on May 04, 2008, 03:12:37 AM
I'm a little thin on spare time at the moment, but I am learning C# and looked at the existing code. I could help out, but I wouldn't know what to do and could only fill in stub classes and methods.
Title: Call to Programmers
Post by: Numsgil on May 04, 2008, 04:22:06 AM
I could get you started doing something as simple as trying to break the existing code.  It's all unit tested, which is this whole programming paradigm where you try to test every public interface in your class and try to break it, and check its results to make sure it's correct.  So something as simple as writing some more tests to try and break the code would be helpful.  I can't guarantee that all the tests I wrote already are 100% thorough, so it's good to have another brain thinking of ways to break it.

Alternatively the parsing code goes too far with exceptions.  I'd like to replace things like Parse("string") with TryParse("string", ref basepair) that doesn't throw exceptions, and instead just returns a success or fail value.

Both would be pretty straightforward, and get you familiar with a section of the code.
Title: Call to Programmers
Post by: bacillus on May 05, 2008, 02:47:53 AM
Ok, I'll have a crack at it as soon as I finished this extensively thick C# book. I got most of the basics I think, just glossing over to make sure I haven't missed out anything.
Title: Call to Programmers
Post by: Trafalgar on May 05, 2008, 11:09:49 PM
I really like C# and XNA, however they're not so great for cross-platformness.

Quote from: Numsgil
Don't stress yourself out too bad.  Darwinbots has a way of sucking up all your available time

Of course, I already have enough other projects sucking up all my available time (but one of which is in C# 2.0 and uses XNA 1.0 refresh 1).
Title: Call to Programmers
Post by: bacillus on May 06, 2008, 01:04:56 AM
Ok, I'm working my way through the things and trying to find any possible loopholes.
I could implement chromosomes if I knew what they do; they still seem like an unnecessary layer of complexity.
Title: Call to Programmers
Post by: Numsgil on May 06, 2008, 02:24:06 AM
Chromosomes are separate threads of execution.  The effects of multiple chromosomes get averaged (probably something more complex than just averaging, I'm not sure yet) together into the final memory for the bot.  So if one chromosome tried to do 5 .up store and the second chromosome did -10 .up store, the net result would be a -5 .up store.  The idea being that two haploid bots can "fuse" during lean times in to a single bot.  The original bots' DNA would share control of the new fused bot using the chromosome system like this.

Chromosomes and codules are the "big" features not implemented yet.  I wouldn't recommend tackling them just yet.

BTW, did you get the unit tests to run properly?  I can't remember how well I worked through the installation instructions for the source code on the wiki.

When you're ready to commit changes, let me know and I'll set you up with an SVN account.
Title: Call to Programmers
Post by: bacillus on May 07, 2008, 03:36:30 AM
I've looked through the unit tests, sealed them off where I thought they were a bit dodgy.
The Chromosome idea seems brilliant to me; I assume that would mean that viruses bias the behaviour instead of rupturing it. It isn't foolproof though; it's easy enough to get around if the variable is amplified.
Title: Call to Programmers
Post by: Numsgil on May 07, 2008, 01:51:55 PM
Right, so I have to think about something better than just an average.  Maybe weight the values somehow.
Title: Call to Programmers
Post by: Numsgil on May 07, 2008, 02:02:20 PM
I'm looking over the changes to the source code you made.  Just a quick couple of notes:

1.  In the random tests, rnd should never return 10.  The range should be 0 to 9, or -9 to 0.  Also add a TODO note: at some point I'll implement a way to seed the random number generator with a specific value, and the rand calls will be deterministic, which will make them easier to test.

2.  I like that you added some extra fizzles tests.

3.  In int ParseLabel(string word, DNA dna), change the function to look like this: bool ParseLabel(string word, ref int value, DNA dna), and have it return true or false depending on if the value was successfully parsed.  And then remove the try/catch block in the function below it and introduce something that checks for true/false.  We want to avoid the case where unknown labels get parsed to 0.  If a label really is unknown, it's a typo on the user's part, and we should be able to catch that and produce a warning or error message for them so they know right away.

Keep at it   I'm impressed how quickly you've figured out the unit tests.
Title: Call to Programmers
Post by: bacillus on May 08, 2008, 01:42:39 AM
I often use the Java version of it, JUnit. It amazed me to see how similar C# and Java are to each other, especially in this regard.
Title: Call to Programmers
Post by: Numsgil on May 08, 2008, 02:10:19 AM
Yeah, I think Microsoft realized that Java was pretty good, but that they'd never have creative control of the language, so they invented their own.  I get the impression that Microsoft has a bit of "it wasn't invented here" syndrome going on.  DirectX vs. OpenGL being a good example.  But they usually do good work after the third or fourth version release, so I guess it all works out for the consumers in the end.
Title: Call to Programmers
Post by: bacillus on May 09, 2008, 02:00:04 AM
Well, if they don't like one, they always have the choice to switch over, so it will always be good.
I tweaked the parser a bit, didn't have time to do much else.
Title: Call to Programmers
Post by: Numsgil on May 09, 2008, 01:33:35 PM
I might spend some time this weekend and rearrange some of the parsing functions.
Title: Call to Programmers
Post by: bacillus on May 09, 2008, 05:30:47 PM
The only thing that looks ugly at the moment is the DNA parser. Might work on that next.
Title: Call to Programmers
Post by: Numsgil on May 09, 2008, 05:45:18 PM
I built the whole thing from the ground up, so the whole way parsing is done wasn't really used in practice till the end, so yeah, it's a little messy.  And I don't think the super high level parsing functions are even tested, IIRC.
Title: Call to Programmers
Post by: bacillus on May 10, 2008, 06:58:08 PM
Sweet, I found an Eclipse plugin for C#. That should increase my productivity massively.
Title: Call to Programmers
Post by: Numsgil on May 11, 2008, 01:14:16 AM
What does your eclipse plugin do exactly?
Title: Call to Programmers
Post by: bacillus on May 12, 2008, 02:22:01 AM
Allows me to use C# in Eclipse.
Basically, Eclipse is the best Development Environment for Java, and whenever I learn a new language looking for an Eclipse Plugin is top priority.
Still haven't found any for English, Spanish, French or German yet...  
Title: Call to Programmers
Post by: Numsgil on May 12, 2008, 02:46:31 AM
So Eclipse is an IDE, and your plugin lets you use Eclipse to program C#?  Gotcha.
Title: Call to Programmers
Post by: bacillus on May 12, 2008, 02:51:27 AM
Yes, IDE, that's it; I just spent the last half hour trying to remember what the proper word was.
Title: Call to Programmers
Post by: k0zm0 on October 15, 2008, 11:09:54 AM
I learned C#.
I'm currently making a Travian Bot, that will be completely autonomous.
Also I'm making a Settlers of Catan bots, that will self-improve using genetic algorithms.
I've come a long way since my last post under suggestions. I've been reading a lot about genetic programming.

I will take a look at the new code 3.0 code, if I can...
Title: Call to Programmers
Post by: Numsgil on October 15, 2008, 01:49:22 PM
hey, long time no see

There's a wiki page which goes over how to look at the source and set everything up.  It's under source code-> C# version.
Title: Call to Programmers
Post by: bacillus on October 16, 2008, 12:03:04 AM
I might be back on the project, if I can scrape up all the information I've misplaced on an extremely cluttered desktop (I use two screens, but sometimes the computer spontaneously decides to move all my stuff from one screen to another, so I categorize in folders. My junk programs folder for obsolete programs has 78 elements   )
Title: Call to Programmers
Post by: Numsgil on October 16, 2008, 02:16:32 PM
Cool.  I use two screens, too.  They set me up like that at work, and once I couldn't do without.  I moved my computer over to my 1080p $1000 TV and I use it as a second monitor now   It's like 38" so it dwarfs my 19" computer monitor   You might want to give this (http://www.mediachance.com/free/multimon.htm) a try, I've found it very useful.

Anyway, check out the wiki page for the code, I've moved it and reorganized it since last you saw it.
Title: Call to Programmers
Post by: Cyberduke on October 16, 2008, 02:31:50 PM
Quote from: Numsgil
Cool.  I use two screens, too.  They set me up like that at work, and once I couldn't do without.  I moved my computer over to my 1080p $1000 TV and I use it as a second monitor now   It's like 38" so it dwarfs my 19" computer monitor   You might want to give this (http://www.mediachance.com/free/multimon.htm) a try, I've found it very useful.

All the devs where I work have two and some even three screens; I have always used two, both for home and work. Though my 24” dell wide screen now seems small compared to Numsgil’s  38” TV , but at least it’s a higher res at 1920x1600
Title: Call to Programmers
Post by: bacillus on October 17, 2008, 12:15:22 AM
My screen is oddly shaped, like an A3 piece of paper except a bit narrower and longer.
Anyway, I installed C# development edition, now all I have to get is the subversion program, might use SVN3 (are different programs compatible? I have no idea.)
Title: Call to Programmers
Post by: Cyberduke on October 17, 2008, 12:33:09 AM
Well as for SVN, I am using http://tortoisesvn.net/ (http://tortoisesvn.net/) 1.53 and that seems to work fine. I don’t really use SVN much, so I have been getting to grips with it myself.
Just create a ‘darwinbots3’ folder then right click on it, select checkout and type/paste in the svn url and click ok.
Title: Call to Programmers
Post by: bacillus on October 17, 2008, 12:40:03 AM
Yes, I heard of TortoiseSVN, seems to be pretty good.
Title: Call to Programmers
Post by: Numsgil on October 17, 2008, 12:59:14 PM
TortoiseSVN is pretty standard.  I used it for a while, but I liked the GUI for SmartSVN better.  You can use anything you want, it shouldn't matter.
Title: Re: Call to Programmers
Post by: Botsareus on December 02, 2010, 07:25:46 PM
Quote
2.  Scripts should be fleshed out.  I haven't given this as much thought as the graphs, but basically anything the user can do, given a reason for doing so, the program should be able to do automatically.  This includes things like changing physics constants over time or based on population levels, etc.

Ideally, this would become another kind of language that's similar to the DNA language.  Complex enough to perform some really amazing simulations.
Cool, I had the same idea but I was going to wait for DB3 to suggest it, because it is kinda a lot of work.

We can also add "LFO" based on cycles. Check out how FLStudio uses LFO.

Quote
1.  I want somebody to start working on some sweet ass graphs.  It doesn't sound exciting, but I think some cool graphs would totally kick the program up a notch, and it'd be a good, relatively safe way for someone to get their feet wet, so to speak.

For graphs I'd like the user to be able to set the x and y axis from a list of things.  So you can do mutations per DNA length.  Total mutations per cycle, etc.  Mutations per bot nrg, etc.

I'd like the user to be able to export data in a form that can be read into and manipulated by Excel.

I'd like the user to be able to toggle between bar graphs, line graphs, point plots, and any other form you can think of.

I'd like the user to be able to perform regression analysis on the data inside DB.  Create best fit curves/lines/parabolas/what have you.  Also any other statistics observations anyone can think of.  Perhaps mean and variance/standard deviation analysis.

I want these graphs to look superb.  Excel quality.  The current ones look ameteur.

I want these graphs to be scalable.  So you don't have to wait 1000 cycles to see any lines being drawn in your graph at all.

I want these to be the smoothest, most user friendly aspect of the program.  I want people to marvel at our superb graphs.


1.) This ended up as a dead end suggestion only based on the premise of: "Do we really need it?"
Title: Re: Call to Programmers
Post by: Numsgil on December 02, 2010, 07:44:00 PM
We can also add "LFO" based on cycles. Check out how FLStudio uses LFO.

What is a "LFO"?  I haven't ever use FLStudio and I'm too lazy to dig through it to find out.

I'm going to guess "Low Frequency Operation", eg: performed every few hundred cycles.

Quote
1.) This ended up as a dead end suggestion only based on the premise of: "Do we really need it?"

Eh?  I still plan on working on graphs.  I'm going to be able to leverage the graphics system I'm working on right now to get it working right.  Instead of drawing bots, you just draw graph lines instead.  You can use the same camera system to zoom in and move around.

Still have to figure out how to collect the information of course.  There's lots of naive ways, but depending on the frequency and whether it should always be collecting data whether the graphs are up or not, and how many cycles it should save, it gets pretty bulky.
Title: Re: Call to Programmers
Post by: Shasta on December 02, 2010, 08:20:36 PM
What is a "LFO"?  I haven't ever use FLStudio and I'm too lazy to dig through it to find out.

I'm going to guess "Low Frequency Operation", eg: performed every few hundred cycles.
Pretty close actually, LFO = Low Frequency Oscillator. They are originally from synthesizers, now they basically are a way to cyclically modulate something else. Often they have the shape of sine/sawtooth/square wave.
Title: Re: Call to Programmers
Post by: SlyStalker on March 09, 2013, 02:38:44 AM
i know python but not much about VB (print statements are about all i know :P )
Title: Re: Call to Programmers
Post by: Botsareus on January 07, 2014, 11:42:27 AM
Quote
For graphs I'd like the user to be able to set the x and y axis from a list of things.  So you can do mutations per DNA length.  Total mutations per cycle, etc.  Mutations per bot nrg, etc.

Ideally, this would become another kind of language that's similar to the DNA language.  Complex enough to perform some really amazing simulations.

Implemented. Users now can create user defined graphs.

Quote
I'd like the user to be able to export data in a form that can be read into and manipulated by Excel.

Implemented, Users now can extract graph data, should be readable by excel.
Quote
I'd like the user to be able to toggle between bar graphs, line graphs, point plots, and any other form you can think of.

Should be easy enough to do when graph data is inserted into excel. (sorry, you  will need to insert in 1000 data point intervals :/)

Quote
I'd like the user to be able to perform regression analysis on the data inside DB.  Create best fit curves/lines/parabolas/what have you.  Also any other statistics observations anyone can think of.  Perhaps mean and variance/standard deviation analysis.

Sounds a little over my head, but should be possible when data is recombined in excel.

Quote
I want these graphs to look superb.  Excel quality.  The current ones look ameteur.

New component called "graph join" lets you recombine saved graph data as an image with any sweet formatting you like.

Quote
I want these graphs to be scalable.  So you don't have to wait 1000 cycles to see any lines being drawn in your graph at all.

Ahm... not implemented, sorry.

Quote
I want these to be the smoothest, most user friendly aspect of the program.  I want people to marvel at our superb graphs.

Somewhat implemented ?!
Title: Re: Call to Programmers
Post by: SlyStalker on January 16, 2014, 11:04:56 PM
Woot I learnt C++ (I'm only a beginner though)