• What Are You Working On? - August 2014
    1,181 replies, posted
[B]Get a good foundation of C#,[/B] then probably OpenGL or Direct3D, or maybe something like MonoGame. Maybe get a copy of 3d Math Primer, since it both important for the level design aspect, and the rendering aspect.
[QUOTE=Darwin226;45785985]Any suggestions for a Unity tutorial/introduction that's aimed at programmers? I'd like to add Unity to my set of skills since it seems great for making ideas into games quickly but I lose motivation as soon as I open up the environment. I'd love to be able to write code and use Unity as an API as much as possible.[/QUOTE] You'd really be better off just using Unity as it's intended to be used; if nothing else it's a lot more productive that way. The official tutorial series and documentation is pretty good.
While experimenting with different ways to track errors in my Manhood parser, I made a custom string class that keeps track of location info when it's split into substrings. For lack of a better name, I call them "stringes". Don't even ask how that's pronounced. They work just like normal strings, except they have some extra properties. You can check what line and column a substring came from, for example. [code]using System; using Stringes; namespace StringeSplitter { class Program { static void Main(string[] args) { Console.Title = "Stringe example"; const string input = "The quick brown\nfox jumps over\nthe lazy dog."; // Display original input Console.WriteLine(input + "\n"); // Create stringe var stringe = new Stringe(input); // Split into 'substringes' foreach (var word in stringe.Split('\n', ' ')) { // Display substringe Console.ForegroundColor = ConsoleColor.Yellow; Console.Write("'{0}' ", word); // Display location info Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine("[Line {0}, Col {1}, Offset {2}]\n", word.Line, word.Column, word.Offset); Console.ResetColor(); } Console.ReadLine(); } } } [/code] [img]http://i.imgur.com/X3fu0hI.png[/img] Here's a [URL="https://github.com/TheBerkin/Stringes"]GitHub link[/URL] in case anyone finds this useful.
[QUOTE=Berkin;45787728]While experimenting with different ways to track errors in my Manhood parser, I made a custom string class that keeps track of location info when it's split into substrings. For lack of a better name, I call them "stringes". Don't even ask how that's pronounced. They work just like normal strings, except they have some extra properties. You can check what line and column a substring came from, for example. [code]using System; using Stringes; namespace StringeSplitter { class Program { static void Main(string[] args) { Console.Title = "Stringe example"; const string input = "The quick brown\nfox jumps over\nthe lazy dog."; // Display original input Console.WriteLine(input + "\n"); // Create stringe var stringe = new Stringe(input); // Split into 'substringes' foreach (var word in stringe.Split('\n', ' ')) { // Display substringe Console.ForegroundColor = ConsoleColor.Yellow; Console.Write("'{0}' ", word); // Display location info Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine("[Line {0}, Col {1}, Offset {2}]\n", word.Line, word.Column, word.Offset); Console.ResetColor(); } Console.ReadLine(); } } } [/code] [img]http://i.imgur.com/X3fu0hI.png[/img] Here's a [URL="https://github.com/TheBerkin/Stringes"]GitHub link[/URL] in case anyone finds this useful.[/QUOTE] Usually that info is stored in the token.
[QUOTE=Darwin226;45787867]Usually that info is stored in the token.[/QUOTE] I designed the class on the concept of tokens. I'm considering expanding it to be able to store custom data types, so it can be used to write lexers.
-late. should've refreshed page-
[QUOTE=KillaMaaki;45786955]Got skin shading integrated. Without: [IMG]http://i.imgur.com/FlUvJTW.png[/IMG] With: [IMG]http://i.imgur.com/gRBXDgz.png[/IMG][/QUOTE] Do you have a darker skin texture to try it with? It kinda feels like it should work relatively unmodified with any level of pigmentation.
[QUOTE=esalaka;45788345]Do you have a darker skin texture to try it with? It kinda feels like it should work relatively unmodified with any level of pigmentation.[/QUOTE] I don't have a darker skin tone to test with, but it should work just fine.
Finished Ludum Dare compo game. [img]http://i.imgur.com/W2pdtZa.png[/img] [img]http://i.imgur.com/m95igrn.png[/img] Page with downloads 'n stuff: [url]http://www.ludumdare.com/compo/ludum-dare-30/?action=preview&uid=18043[/url] [img]http://i.imgur.com/BhwiTwU.png[/img] That's my fifth consecutive LD in the bag. Now I really want to finish a bigger project some time...
what about making an fps limiter? nobody needs 500 fps, unless you want to heat your room. but awesome game btw.
[QUOTE=Clavus;45788766]Finished Ludum Dare compo game. Page with downloads 'n stuff: [url]http://www.ludumdare.com/compo/ludum-dare-30/?action=preview&uid=18043[/url] That's my fifth consecutive LD in the bag. Now I really want to finish a bigger project some time...[/QUOTE] [t]http://puu.sh/b6vvP/c96445fd89.jpg[/t] Why do I feel like the non-winky face is being harassed? You shoulda made the non winky face a gamer girl and the winky faces fedora wearing loners :)
[QUOTE=Clavus;45788766]Finished Ludum Dare compo game. That's my fifth consecutive LD in the bag. Now I really want to finish a bigger project some time...[/QUOTE] Addictive as hell
[IMG]http://puu.sh/b6kpf/7dffbf9721.gif[/IMG] finally took care of my submission problems! Here's a video from my ld game, don't know what's up with the quality of the video tho [media]http://www.youtube.com/watch?v=9zuTDr-Y9GM[/media] and you can download it here: [URL]http://www.ludumdare.com/compo/ludum-dare-30/?action=preview&uid=37050[/URL] bonus video of the first song I've ever written [URL]http://www.youtube.com/watch?v=Y67K_VztOOY[/URL]
Didn't really get far with my Ludum Dare game, but submitted it anyway. [vid]http://zguyserver.nu/videos/Video_2014-08-25_003448_VP8.webm[/vid] [url]http://www.ludumdare.com/compo/ludum-dare-30/?action=preview&uid=22621[/url]
So, having just started CS last friday, I've decided to take up learning C again, since it seems to me like the Latin of programming, except C isn't useless. I've bought a C book used for 1$, but I really wanna get my hands on K&R. Everyday in school after class I go to the student commons area and sit around weeaboos to motivate myself to never be a college dropout like them (they sit in the commons and play videogames all day instead of going to class) while listening to music and just reading my book about C for ~2 hours every day. I like doing small, simple programming exercises with it, but I hope by the end of the year I'll have a personal project I'll have attached myself to. Really I'd love to know how to make some of the awesome games I see here in WAYWO, someday, but I think that Game programming is easier under OOP and that I'm probably a while away from that. When I'm in my 3rd years of CS, will I have the opportunity to take classes relevant to game programming? also I read that I should know linear algebra for game programming. Is this true?
I used my [URL="https://github.com/TheBerkin/Stringes"]Stringes[/URL] library to make a simple lexer. I am surprised at how quickly I got it working. [code]using System; using System.Collections.Generic; using System.Text.RegularExpressions; using Stringes; using Stringes.Tokens; namespace LexMyAss { public static class Lexer { public static LexerRules<TokenType> Rules; static Lexer() { Rules = new LexerRules<TokenType>() { {"+", TokenType.Plus}, {"-", TokenType.Minus}, {"/", TokenType.Slash}, {"*", TokenType.Asterisk}, {"(", TokenType.LeftParen}, {")", TokenType.RightParen}, {"=", TokenType.Equals}, {new Regex(@"-?\d+(\.\d+)?"), TokenType.Number}, {new Regex(@"[a-zA-Z_][a-zA-Z\d_]*"), TokenType.Identifier} }; } public static IEnumerable<Token<TokenType>> Lex(string inputString) { var reader = new StringeReader(inputString); Token<TokenType> token = null; while (!reader.EndOfStringe) { reader.SkipWhiteSpace(); if (reader.EndOfStringe) yield break; if (!reader.EatToken(Rules, out token)) { var c = reader.PeekChare(); throw new FormatException(String.Concat("(Ln ", c.Line, ", Col ", c.Column, ") Invalid token '", c, "'")); } yield return token; } } } public enum TokenType { Plus, Equals, Minus, Slash, Asterisk, LeftParen, RightParen, Identifier, Number } }[/code] [img]https://i.imgur.com/df5xfUu.png[/img] [editline]25th August 2014[/editline] Aw shit. When you see it...
Hehe, LexMyAss...
[QUOTE=proboardslol;45790653] When I'm in my 3rd years of CS, will I have the opportunity to take classes relevant to game programming? also I read that I should know linear algebra for game programming. Is this true? [/QUOTE] yeh. most of the basic basics that you need to know are pretty easy-- i accidentally learned it by accident a while ago like one case you'd use it in is if you're hardcore and don't want to use box2d or some shit, so you make your own collision system that works on angled objects. you can't use straight up swept AABB or whatever the fuck they call it, so one way people do it is by doing a projection of the possibly colliding object into the other object's local axis and then doing a sort of swept AABB then there's just the basic concept of a vector and how to actually use them, if that even counts as linear algebra also a lot of things in 3d will have you mess around with matrices and shit so beware i may be a bit off on this stuff tho, so if I got anything wrong, please tell me
Guess who got freetype working after a year! [img]http://i.imgur.com/FU64M0P.png[/img] This guy did!
[QUOTE=Map in a box;45791558]Guess who got freetype working after a year! [img]http://i.imgur.com/FU64M0P.png[/img] This guy did![/QUOTE] Shit, I thought it was going to be Layla. I guess you did alright.
What's this from? Is Freetype really bad or something?
[QUOTE=proboardslol;45790653]So, having just started CS last friday, I've decided to take up learning C again, since it seems to me like the Latin of programming, except C isn't useless. I've bought a C book used for 1$, but I really wanna get my hands on K&R. Everyday in school after class I go to the student commons area and sit around weeaboos to motivate myself to never be a college dropout like them (they sit in the commons and play videogames all day instead of going to class) while listening to music and just reading my book about C for ~2 hours every day. I like doing small, simple programming exercises with it, but I hope by the end of the year I'll have a personal project I'll have attached myself to. Really I'd love to know how to make some of the awesome games I see here in WAYWO, someday, but I think that Game programming is easier under OOP and that I'm probably a while away from that. When I'm in my 3rd years of CS, will I have the opportunity to take classes relevant to game programming? also I read that I should know linear algebra for game programming. Is this true?[/QUOTE] There's some truth to that, and then not. First of all, let me congratulate you on taking the path of C! While it can be a path that takes a long time to learn and adjust to, it is also one of, if not THE path that can take you the farthest. Now, for the gaming requirements, I would suggest also doing some self studying using Khan Academy, regarding some of the topics you may run in to. Besides that, I would recommend that you do NOT take any class relevant to game programming, however difficult it may seem to do without. With a great skillset in C, you can evolve better in those areas if you do not follow a strict line of rules set out for you. Besides, game programming isn't the most difficult of topics, especially not in the beginning when you'll just be doing fancy shaders, scripted behaviour, and massive instancing. That kind of stuff. If things ever get tough, you'll always have Facepunch to help you along the way. For now: go read, grasshopper!
[img]http://i.imgur.com/wrXLwSJ.png[/img] I don't get to make games much any more but I finished my Ludum Dare submission last night. It's a JS game written using Phaser js which is pretty cool. [url=http://www.ludumdare.com/compo/ludum-dare-30/?action=preview&uid=15096]Click here to see entry[/url]. Hopefully you can figure out how to play it, although it's not a new concept. Some things are not 100% because I didn't have time, I would have liked to add more levels, better AI and better sounds and music. Let me know what you think though.
[QUOTE=Vampired;45793005]I don't get to make games much any more put I finished my Ludum Dare submission last night. It's a JS game written using Phaser js which is pretty cool. [/QUOTE] Oh damn that is very cool man. I've seen the concept before yeah, but this was fun to play. Great visuals and music. Gave you a good rating.
[QUOTE=Huabear;45793132]Oh damn that is very cool man. I've seen the concept before yeah, but this was fun to play. Great visuals and music. Gave you a good rating.[/QUOTE] Thanks man, yeah it's based on a game I played a long time ago but I couldn't remember what it was called or how to find it. Someone mentioned it was like Galcon in the comments. Thanks for the rating
My lexer can now convert unrecognized character sequences into tokens using a special-case rule. [code]Rules.AddUndefinedCaptureRule(TokenType.Misc, s => s.Trim());[/code] It accumulates characters until it finds the end of the string or a recognized symbol/pattern. [code]lexer> a + !?!??!? - b * $$$$ / c <Identifier: 'a'> <Plus: '+'> <Misc: '!?!??!?'> <Minus: '-'> <Identifier: 'b'> <Asterisk: '*'> <Misc: '$$$$'> <Slash: '/'> <Identifier: 'c'>[/code] A small but extremely useful feature, especially for languages that incorporate normal text (i.e. markup languages).
[QUOTE=Berkin;45793288]My lexer can now convert unrecognized character sequences into tokens using a special-case rule. [code]Rules.AddUndefinedCaptureRule(TokenType.Misc, s => s.Trim());[/code] It accumulates characters until it finds the end of the string or a recognized symbol/pattern. [code]lexer> a + !?!??!? - b * $$$$ / c <Identifier: 'a'> <Plus: '+'> <Misc: '!?!??!?'> <Minus: '-'> <Identifier: 'b'> <Asterisk: '*'> <Misc: '$$$$'> <Slash: '/'> <Identifier: 'c'>[/code] A small but extremely useful feature, especially for languages that incorporate normal text (i.e. markup languages).[/QUOTE] I've recently wrote a parser for my Haskell editor. It's written in F# and made so that you can compose parsers into more complex ones. [url]https://github.com/LukaHorvat/HaskellPad/blob/develop/Core/CodeParser.fs[/url] For example, [code]let number stats str = let exponent = Parse.anyOf "eE" |>| Parse.oneOrNone (Parse.anyOf "+-") |>| Parse.number match (Parse.number |>| ((Parse.char '.' |>| Parse.number |>| Parse.oneOrNone exponent) ||| exponent)) ||| (Parse.char '0' |>| ((Parse.anyOf "oO" |>| Parse.oneOrMore (Parse.anyOf "01234567")) ||| (Parse.anyOf "xX" |>| Parse.oneOrMore (Parse.anyOf "0123456789abcdefABCDEF")))) ||| Parse.number <| str with | None -> Mismatch | Some(wrd, rest) -> Tag(wrd, rest, stats, "number")[/code] parses numbers from [url]http://www.haskell.org/onlinereport/haskell2010/haskellch2.html#x7-190002.5[/url] They're basically lightweight, linear regular expressions with the advantage of being able to parse more than just strings (though strings are what I'm parsing currently)
[QUOTE=reevezy67;45792089]What's this from? Is Freetype really bad or something?[/QUOTE] No, FreeType is actually pretty good. For me it was mainly the ridiculous number of metrics and measurements every single glyph has, and figuring out where everything goes and what is what. Also Map in a box, it looks like you're not using the advance width to move the pen. You should probably do that.
Here is my Ludum Dare entry. It's designed for 2 Players on 1 Keyboard local, but you can control both characters yourself to make it a bit harder. I did have a 1 Player mode in but had a bug I couldnt fix before the deadline. [media]http://www.youtube.com/watch?v=YtaIqo4UGTQ[/media] Submission: [url]http://www.ludumdare.com/compo/ludum-dare-30/?action=preview&uid=30913[/url] I havent tried the Mac or Linux builds yet so if anyone does let me know if it works fine or any issues.
My wife was not impressed with my porting code. Me: check this out! Her: it looks the same as the last time you showed me... Me: yea, but now it's on an entirely different programming language Her: ohhh, big woop.
Sorry, you need to Log In to post a reply to this thread.