[QUOTE=Icedshot;39393691]Have you considered crowd sourcing certain minor aspects of coding to these forums? Most of us (I would think) would be fairly happy to contribute code in some way. I'm not sure how the specifics would work out, however
There are a few legal issues with this, but it might be a way of getting some things done without having to do them yourself, or even pay anyone[/QUOTE]
Didn't we already try that crowd sourced game?
Edit: For the hacker cup challenge, I thought you had to complete all of the challenges to qualify for round one, but you only have had to do one :P. I am excited for the next set now :P
Working on my compiler again, seeing steady progress: you can declare static variables of various types, and then use them in your code:
[code]const pointer debugout = 0xc000;
const pointer debugin = 0xc001;
function main()
{
var int x;
nfc(x, 0x0018);
nfc(x, debugin);
nfc(debugout, x);
goto 0;
}[/code]
(You can use gotos as well)
That compiles to the following machine code:
[IMG]http://i.imgur.com/YdiBPe2.png[/IMG]
0x8000 is the bottom of RAM, which is where the linker starts allocating static storage from. The stack's going to grow down from the top at 0xbfff. (I could expand RAM to 24KiB, 0x8000->0xdfff, but that would require hardware changes).
You can see how goto compiles to machine code, it finds an unused location to NOR into and then stitches in the target address. I still need to do labels.
A few more builtin functions and I can start writing some useful code! Then I can add headers, std library etc.
Pointer dereferencing is going to be a macro function, can't see how to get it below 15 instructions on this architecture. Oh well, it's at 2.5MHz anyway :v:
[cpp]void main()
{
GForth forth;
forth.compile("10 DEC DUP DUP OUT 1 SWAP IF");
while (forth.step()) {};
cin.get();
}[/cpp]
[code]9
8
7
6
5
4
3
2
1
0
exception at address 0x48 (literal push "0"): stack overflow[/code]
Woohoo! Loops/conditional jumps working!
[editline]29th January 2013[/editline]
[QUOTE=high;39391439]Looks like [url=http://en.wikipedia.org/wiki/Reverse_Polish_notation]reverse polish notation[/url].[/QUOTE]
That's basically it, with extra operators.
[editline]29th January 2013[/editline]
And memory addressing.
[QUOTE=voodooattack;39394350][cpp]void main()
{
GForth forth;
forth.compile("10 DEC DUP DUP OUT 1 SWAP IF");
while (forth.step()) {};
cin.get();
}[/cpp]
[code]9
8
7
6
5
4
3
2
1
0
exception at address 0x48 (literal push "0"): stack overflow[/code]
Woohoo! Loops/conditional jumps working!
[editline]29th January 2013[/editline]
That's basically it, with extra operators.
[editline]29th January 2013[/editline]
And memory addressing.[/QUOTE]
I did something similar to this a while back. I found that a Forth style VM is actually a pretty cool compile target for toy programming languages.
I was pretty surprised about how well this works (I couldn't test it during the last few days):
[table="width: 500, align: center"]
[tr]
[td][media]http://www.youtube.com/watch?v=hP9e8pxfq8g[/media]
[quote]1000 dodecahedra moving at constant speed in cylindrical coordinates (+ 1 static one).
It starts to slow down between 1000 and 2000 entities (debug mode, debugger attached).
Release mode without debugger surprisingly can simulate a good 20000 of these without noticeable slowdowns. (Single thread at 3,9GHz though, so this is probably a bit more than I can use in an actual application.)
Each moving entity contains 10 components (of which 2 are singletons and not duplicated) and is called 4 times through update events and once for drawing.
All dodecahedra (minus the central one) start at the same position, the drift outwards is caused by -(dρ/dφ)*Δφ, counteracted by a very small constant movement towards the y-axis. I plan to use this kind of behaviour (steering relative to a changing look direction) for player input eventually so there's no need to make it 100% correct.[/quote][/td]
[/tr]
[/table]
I have an idea where I want to go with this, it's too early for anything specific though. 1000 entities should be FAR more than I'll need, so I'm pretty happy about that.
[QUOTE=Jawalt;39394505]I did something similar to this a while back. I found that a Forth style VM is actually a pretty cool compile target for toy programming languages.[/QUOTE]
What I like the most is how easy it is to manipulate using genetic operators and still produce something meaningful out of the chaos. It's perfect for that purpose as far as I'm concerned.
[QUOTE=NorthernGate;39394712]Facepunch Programming Chat tries to pronounce Defribubalte
[url]http://vocaroo.com/i/s0drDbP71ntD[/url][/QUOTE]
[IMG]http://upload.wikimedia.org/wikipedia/en/6/69/Dalek_2010_Redesign.jpg[/IMG]
[QUOTE=Icedshot;39393691]Have you considered crowd sourcing certain minor aspects of coding to these forums? Most of us (I would think) would be fairly happy to contribute code in some way.[/QUOTE]
Really? We can't even agree on how to use namespaces correctly. If you want to get things done, giving it to a bunch of inexperienced teenagers with massive egos is [B]not[/B] the way to go.
For example (forgive the formatting):
[QUOTE=JohnD;39393783]
int main() { return 0; }
[/QUOTE]
This would be better written as :
[QUOTE=JohnD;39393783]
int main() { }
[/QUOTE]
Well. The qualifiers ended for the hacker cup. Since only one problem was required to advance it wasn't that hard.
I though I'd give my solution to the third problem though. I can't confirm it's the correct one since I only learned about the cup 2 hours ago and didn't have time to write the whole thing but here's the concept.
You generate the first k numbers using the given formula. Make a sorted list out of those numbers and using it generate the next k numbers. Due to how each number has to be different to k previous numbers, and how they lean towards the minimum, those k numbers you generated second will contain numbers from 0 to k. Now since adding a new number will "remove" the first one in that second batch of numbers, the new number has to be EQUAL to the "removed" number. Therefore we get a cycle.
The nth number (the one we are looking for) is the (n % k)th number in our cycle, or the k + (n % k)th number in our array.
There are some special cases with r being less than k but I think a well written solution shouldn't even have to account for that.
As for the complexity, first k numbers are O(k), sorting the array is O(klogk) and generating the next k numbers involves removal and insertion to the sorted list so O(klogk).
I'm working on an old sdk500 while waiting for my pi to come in.
[t]http://i48.tinypic.com/j5cron.png[/t]
The beginnings of an IDE or something. Managed to get rid of the tildes by setting the Texteditor.Options.ShowInvalidLines to false.
[editline]28th January 2013[/editline]
I'm liking Gtk#. It's not as easy as Winforms, but it's faster and more flexible. Comes with a huge lack of docs though.
[img]http://i.imgur.com/A8VSzVn.png[/img]
Diffuse lighting and specularity!
[QUOTE=garry;39388670]I'm not so worried about testing/vetting them. I'm more worried about finding capable people locally.[/QUOTE]
If you can't find anyone locally. I would suggest hiring someone to work remotely part time for a few weeks and then based on their performance/fit/etc relocate them and bring them on full time.
@Garry
I'm for sale :)
3 years industry experience
Will have BSC in May
Broad range of skills
Technical Art Skills also included.
C++
C#
Unity
UDK
Source (Commercial License)
Live in Birmingham UK
Super enthusiastic and self driven
LinkedIn
[URL]http://www.linkedin.com/pub/louis-deane/18/555/23b[/URL]
It's a short summary cause I find I prefer reading them instead of full CV's when I've been the employer in the past. More detailed information is of course available.
[QUOTE=VGS_Devs;39397840]@Garry
I'm for sale :)
3 years industry experience
Will have BSC in May
Broad range of skills
Technical Art Skills also included.
C++
C#
Unity
UDK
Source (Commercial License)
Live in Birmingham UK
Super enthusiastic and self driven
LinkedIn
[URL="http://www.linkedin.com/pub/louis-deane/18/555/23b"]http://www.linkedin.com/pub/louis-deane/18/555/23b[/URL][/QUOTE]
I wish I was smart.
[QUOTE=jung3o;39397887]I wish I was smart.[/QUOTE]
There are so many people at Uni like this. It's just a matter of time, I've been at this game for about 10 years now :)
I'm a strong believer that everyone has the potential to be fantastic at anything they truly have a passion for and set their mind too.
I'm kinda euphoric cause we are still "hungover" from Global Game Jam. Anyone else participate?
I got lighting (well, it looks more like global shading to be honest) working myself too (it currently just uses the built-in OpenGL lighting system).
[IMG]http://i.imgur.com/d5PDUQN.png[/IMG]
I also changed to a freebie font (I'm assuming) found off Google Images just to be safe. Perhaps I should add different picture font support.
I work on a source management tool.
[QUOTE=VGS_Devs;39397840]@Garry
I'm for sale :)
3 years industry experience
Will have BSC in May
Broad range of skills
Technical Art Skills also included.
C++
C#
Unity
UDK
Source (Commercial License)
Live in Birmingham UK
Super enthusiastic and self driven
LinkedIn
[URL]http://www.linkedin.com/pub/louis-deane/18/555/23b[/URL]
It's a short summary cause I find I prefer reading them instead of full CV's when I've been the employer in the past. More detailed information is of course available.[/QUOTE]
Email me [email]garrynewman@gmail.com[/email] with examples of work :)
[editline]29th January 2013[/editline]
[QUOTE=high;39397505]If you can't find anyone locally. I would suggest hiring someone to work remotely part time for a few weeks and then based on their performance/fit/etc relocate them and bring them on full time.[/QUOTE]
We've done it this way before. It works, but only to a certain degree. Being together all day is much much better. You can talk problems over, you share project energy, ideas.
[QUOTE=VGS_Devs;39397840]@Garry
I'm for sale :)
3 years industry experience
Will have BSC in May
Broad range of skills
Technical Art Skills also included.
C++
C#
Unity
UDK
Source (Commercial License)
Live in Birmingham UK
Super enthusiastic and self driven
LinkedIn
[URL]http://www.linkedin.com/pub/louis-deane/18/555/23b[/URL]
It's a short summary cause I find I prefer reading them instead of full CV's when I've been the employer in the past. More detailed information is of course available.[/QUOTE]
Wow thats a pretty awesome resume/cv, if you dont mind me asking I checked out your linkedin and was wondering how you managed to get into interwave so young?(assuming you were 18-19, i might be completely wrong here tho)
[QUOTE=garry;39387889]I need to hire an artist and coders to work in-office. I have no idea how to do that.[/QUOTE]
Garry, I had an idea. (No it's not "make me the ideas guy")
I admit I'm not exactly pro at coding. All I really know is Python, and even then I wouldn't consider myself an absolute wizard at it. And I live in the US so it would cost you a buttload and a half to move me out there anyway.
But. What if I were just the playtester and/or guy trying to deliberately break the shit out of whatever you produce? Bugs would be found faster, I could do that from the Southern coast of Antarctica if I had to, and coders wouldn't have to test shit (as much), therefore speeding up production (slightly).
What do you say (even though I really doubt it's a yes)?
[editline]29th January 2013[/editline]
also I wouldn't cost as much as a coder/artist would
I can get people to break what I make for free
[QUOTE=gparent;39395113]This would be better written as :[/QUOTE]
But not returning anything is against the standard.
And in the worst case if you force the compiler to do it it might decide to actually return nothing.
[QUOTE=garry;39399759]I can get people to break what I make for free[/QUOTE]
What about breaking stuff on lower level.
So writing hacks for your own game to see if it's secure?
[editline]29th January 2013[/editline]
Not saying that I can do that btw :/
Best off patching that when it's an issue.
[QUOTE=garry;39400197]Best off patching that when it's an issue.[/QUOTE]
So you're going to install sprinklers when the building is on fire?
Well it kinda makes sense. I haven't seen any hacks that do any (mayor) damage to servers. I've seen people use aimbots etc on my server but it's pretty damn obvious most of the time.
[QUOTE=esalaka;39399940]But not returning anything is against the standard.
And in the worst case if you force the compiler to do it it might decide to actually return nothing.[/QUOTE]
Normally, yes, but the standard makes an exception for main
[quote=ISO/IEC 14882:2011 §3.6.1.5]
If control reaches the end of main without encountering a return statement, the effect is that of executing
[code]
return 0;
[/code]
[/quote]
[QUOTE=Mega1mpact;39400222]So you're going to install sprinklers when the building is on fire?
Well it kinda makes sense. I haven't seen any hacks that do any (mayor) damage to servers. I've seen people use aimbots etc on my server but it's pretty damn obvious most of the time.[/QUOTE]
It's a waste of time and money fixing exploits that are never going to be exploited.
[QUOTE=garry;39400511]It's a waste of time and money fixing exploits that are never going to be exploited.[/QUOTE]
You know what exploits are going to be exploited? If they're fixed, the can't be exploited.
I'm not saying that.
I'm saying that if I'm making a game then getting the game finished and out there being played is a million times more important than making sure it's cheat/exploit proof before release.
Because you might release it and then no-one wants to play it. Then the months you've spent working on the anti-cheat system is totally wasted - because it's not needed - at all.
Sorry, you need to Log In to post a reply to this thread.