|
tef posted:The only effective way of tidying up of source code is deleting it. Everything else creates more work.
|
# ? Jul 23, 2013 17:11 |
|
|
# ? May 9, 2024 08:04 |
|
Rottbott posted:I'm not sure what you mean. Clearly it is possible to improve code. I'm sure he's trying to stress the "effective" part.
|
# ? Jul 23, 2013 17:28 |
|
Rottbott posted:Clearly it is possible to improve code. Yes, by getting rid of it If you 'improve' your code by writing more code, you increase the maintenance, documentation and testing burden as a result. If you end up writing more code, building more abstractions, you're making a tradeoff, rather than just an improvement. If you want to continue this argument in another thread i'm happy too, but let's not poo poo up the neat thread of cool stuff with agonising over a cheap joke
|
# ? Jul 23, 2013 18:24 |
|
You use the emoticon a lot and I don't know what it means! Is tef mad? Is tef confused? Does tef's teeth hurt? I don't know!
|
# ? Jul 23, 2013 19:18 |
|
Thermopyle posted:Is tef mad? Come on man, you should know this by now. tef is never mad.
|
# ? Jul 23, 2013 19:46 |
|
Thermopyle posted:You use the emoticon a lot and I don't know what it means! Is tef mad? Is tef confused? Does tef's teeth hurt? I don't know! It means tef has turned into a cat and is smiling.
|
# ? Jul 23, 2013 20:17 |
|
Thermopyle posted:You use the emoticon a lot and I don't know what it means! Is tef mad? Is tef confused? Does tef's teeth hurt? I don't know! I guess I just like cats It might be a marker to mean "I'm not trying to be an rear end in a top hat it's just how I speak"
|
# ? Jul 23, 2013 20:19 |
|
Thermopyle posted:You use the emoticon a lot and I don't know what it means! Is tef mad? Is tef confused? Does tef's teeth hurt? I don't know! tef is reminding us that he, too, has a stuck white pixel.
|
# ? Jul 23, 2013 20:50 |
|
tef posted:Yes, by getting rid of it On topic, I did somehow actually add a new feature to my game - weapons. Horrible programmer art ahoy: This was more work than it looks. Turrets can either be fixed or tracking, each has its own tracking speed, shell velocity, rounds per minute and burst rate. Ships can die and float around as wrecks. Human players are provided with a new one by the server. The end result is that it's becoming an actual game instead of a physics demo. Next up is missiles/CIWS and fixing the giant HUD.
|
# ? Jul 24, 2013 12:57 |
|
Tef I think you misunderstood. I love deleting code. Deleting code is wonderful but if you can't delete it, I didn't mean you should tidy up the code by adding more code (what?), I meant you should tidy it up by making it cleaner and more obvious and probably less code, and then it's easier to maintain.
|
# ? Jul 24, 2013 16:14 |
|
I am guessing that tef was implying abstraction when he said deletion, since the abstraction of code generally (if not over-engineered) results in less code.
|
# ? Jul 24, 2013 16:30 |
|
This thread always pops up in my subscribed threads and reading it always make me sad because I program for profit instead of working on my dream videogame. The amount of code really is not an indicator for elegance or low maintenance. Really tightly packed together stuff can be a nightmare to maintain, document or expand. Double so when half of it relies on 3rd party libraries that are now outdated with quirks nobody working on the original code was aware of at the time. This isn't more elegant, you just outsourced the complexity to a black box you might not know anything about. I encounter this almost every other day and it's always a pain in the rear end. If your code just needs lots of lines, then let it have it, everything else is a pissing match. Police Automaton fucked around with this message at 17:45 on Jul 24, 2013 |
# ? Jul 24, 2013 17:43 |
|
Police Automaton posted:This thread always pops up in my subscribed threads and reading it always make me sad because I program for profit instead of working on my dream videogame.
|
# ? Jul 24, 2013 18:11 |
|
Orzo posted:I am guessing that tef was implying abstraction when he said deletion, since the abstraction of code generally (if not over-engineered) results in less code. tef posted:If you want to continue this argument in another thread i'm happy too, but let's not poo poo up the neat thread of cool stuff with agonising over a cheap joke
|
# ? Jul 24, 2013 18:32 |
|
Yup, sorry for continuing the derail.Police Automaton posted:This thread always pops up in my subscribed threads and reading it always make me sad because I program for profit instead of working on my dream videogame.
|
# ? Jul 24, 2013 18:39 |
|
Anyway I don't think I posted any things from my game/engine Super Fungalisk in this thread so here's a shot of the support for lights that emit along a line I just added: GIF.gif I like posting demos but I never know whether to post them here, the making games thread, or the game dev thread so I choose some at random each time!
|
# ? Jul 24, 2013 18:55 |
|
Orzo posted:For me, game making is a hobby. I have a full-time job as a software engineer in a totally non-game related industry. I'm guessing a lot of people who post here have a similar situation. This is also my situation. I'm kind of young though, so I don't have many other responsibilities eating up my time. (Sorry, mean to add this in an edit instead of making a new post!)
|
# ? Jul 24, 2013 18:58 |
|
seiken posted:Anyway I don't think I posted any things from my game/engine Super Fungalisk in this thread so here's a shot of the support for lights that emit along a line I just added: GIF.gif 2. I generally post here and the Making Games Megathread. If it's a tech-heavy update (like most of yours are) I sometimes post in the Game Development thread. 3. Are you really calling it Super Fungalisk?
|
# ? Jul 24, 2013 19:03 |
|
seiken posted:Anyway I don't think I posted any things from my game/engine Super Fungalisk in this thread so here's a shot of the support for lights that emit along a line I just added: GIF.gif I've also noticed a rise in @hotmail subscribers to my blog, which all seem to be fake so I guess I should upgrade that captcha plugin. quote:software engineer at the office, game maker at home. Orzo - I prefer gifs, even more so when I'm on my phone. Gifcam is way easier to use and upload to minus than recording a video and figuring out encoding and whatever it takes to get to youtube. That's just my personal feelings though. I have to upload a screencast sometime this week so I'll be finding out what it takes to get to youtube.
|
# ? Jul 24, 2013 19:07 |
|
I took a year (well more like two) off from work in which I really wanted to do something like this. I ended up doing literally nothing and had a very hard time getting back into a normal working cycle, having so much free time pretty much almost destroyed me. Somehow I just don't function without deadlines. I *do* have a project on my harddisk (like probably every guy who's just vaguely interested in this) but if I work on it I end up being sidetracked by inconsequential stuff, like optimizing code for weeks to get that one frame more which really doesn't need that much optimization. It's funny because in my real work, this never happens. On the other hand, I love drawing sprites regularly and do this on my Amiga like some kind of weirdo. Police Automaton fucked around with this message at 20:43 on Jul 24, 2013 |
# ? Jul 24, 2013 20:39 |
|
Orzo posted:1. Your stuff is super cool. But why is it always a gif? I think youtube or something would be much more accessible / easy to load on mobile, etc. 1. Mostly because I'm super lazy, partly because I'm a pretentious pixel purist and I like that gifs are lossless. When I have a game to show off rather than a tech demo I should probably start using youtube (right now I'm not really looking to promote this properly or anything). 2. Seems reasonable! 3. That was a joke for your benefit
|
# ? Jul 24, 2013 21:31 |
|
The buttons came out fantastic (Folmer's art, as usual)
|
# ? Jul 24, 2013 22:26 |
|
That really is beautiful documentation. I'm a complete novice who was convinced by this thread get a BBB and I've been enjoying learning linux on it, but I can't even get the wifi to work.
|
# ? Jul 25, 2013 08:56 |
|
[Insert pun about how this is 'pretty Awful'] ugh, SALR loads the images so have a to prevent that Sereri fucked around with this message at 16:51 on Jul 26, 2013 |
# ? Jul 26, 2013 16:49 |
|
Thanks for making the proper YOSPOS themes. I'm excited. e: Somehow I saw that as iOS at first glance, don't ask me how. Still cool though. LP0 ON FIRE fucked around with this message at 18:33 on Jul 26, 2013 |
# ? Jul 26, 2013 18:31 |
|
Well, after a lot of playing around with a high-speed camera and fixing various timing issues, Xylobot is now playing sixteenths at 130 BPM! https://www.youtube.com/watch?v=0Xwfvl7t2LM In about a week I will have one of the greatest YouTube videos of all time. I can't wait to have my photographer friend come over and film it for me with a nice, clean background and a proper mic. e: bonus 500fps footage! You can see how much the entire thing vibrates when subjected to high accelerations (almost 12'000 degrees per square second!) https://www.youtube.com/watch?v=Ykn8ILEvhDU go play outside Skyler fucked around with this message at 21:27 on Jul 26, 2013 |
# ? Jul 26, 2013 21:16 |
|
That's really awesome. If you ever did a detailed write up of what you did and the challenges you overcame, I'd read that like there was no tomorrow.
|
# ? Jul 26, 2013 21:35 |
|
Thermopyle posted:That's really awesome. Well, this is my final bachelor's project actually so I am writing up a 60 page documentation, but it's all in french If the video gets a lot of success I'll definitely look into translating the interesting parts. But to answer a few potential questions: - It's coded in C++ on an real-time industrial-grade automaton - I did not build the robot, I'm just the programmer. - It's all object-oriented and super modular. The day someone decides to add more arms it will be a breeze - I also made an app in C# that allows one to compose, attribute hands and calculate trajectories. The real-time app and the HMI (human-machine interface) can communicate via UDP and you can simply click "play" in the app and the robot starts playing The real challenges were the following: - Not breaking the drat thing. It's so powerful it could easily break your balls if you got hit in the sack. Many times I've had the arms cross themselves and had to press the emergency stop button before the thing breaks its own arms - Figure out the physical limits of the thing, like what the gently caress is actually happening when it's doing <100ms movements, when it starts to vibrate too much, how much time does the hand take to go up and down, things like that - Writing code and having a couple of LEDs as my only debugging method for at least 80% of development (I figured out a way to have some sort of console after a while but I needed to get the UDP server working) - Solve the inverse kinematics problem (which turns out to be quite easy when you know "the trick") - 64 megs of RAM and absolutely no OS protection, which means a segmentation fault results in OS corruption and a reboot of the entire thing which takes about 2 minutes. That adds up over time. There are a lot more, but I would say debugging was the hardest part. It's just trial-and-error and when you've stood up to go turn the drat thing off and on for the millionth time you just get kind of frustrated. go play outside Skyler fucked around with this message at 21:57 on Jul 26, 2013 |
# ? Jul 26, 2013 21:50 |
|
Sir Davey posted:- It's coded in C++
|
# ? Jul 26, 2013 22:50 |
|
Seven Round Things posted:C++ is my language of choice for desktop apps/gamedev, but I thought it was usually avoided on embedded systems/realtime stuff? Could you use exceptions/virtual functions/RTTI/STL/new/delete/etc, or was it more "C with classes"? Well it's a little complicated, but I was basically using a framework developped at my school that extends a lot on C++. I basically had the whole thing, including a bunch of extra things like reflection which really helps when you're serializing/deserializing things and want to keep it flexible. It was a great tool and it's all implemented using a bunch of preprocessor directives. For example, if I want to make a public attribute with a getter/setter, I'd write code:
C++ is really not that frowned upon on embedded systems, from what I've learned. It's just that it's usually overkill for most projects. But when you have Linux running on a processor, you can do whatever you like. You shouldn't stick to C just because you have more control or something like that. You should use the appropriate tool for the job. If you need the flexibility of python or something like that, go ahead. Embedded Systems are getting ridiculously powerful nowadays. E: here is the website of the the framework I used. It's actually quite powerful when you start using their tools http://objectis.ch/en-us/products/ostudio/conceptrt.aspx go play outside Skyler fucked around with this message at 23:18 on Jul 26, 2013 |
# ? Jul 26, 2013 23:13 |
|
Sir Davey posted:C++ is really not that frowned upon on embedded systems, from what I've learned. It's just that it's usually overkill for most projects. But when you have Linux running on a processor, you can do whatever you like.
|
# ? Jul 27, 2013 00:13 |
|
Seven Round Things posted:I see. It was less the embedded part and more the real-time part that surprised me- C++ encourages exceptions, dynamic memory allocation, etc which make for nondeterministic timing. In other words, in C++ you should still minimize dynamic memory allocation and aim to have operations that do not have exceptional behavior, just like in C, and this is true whether you're doing embedded work or not.
|
# ? Jul 27, 2013 01:49 |
|
That Turkey Story posted:As someone who does the vast majority of his coding in C++, this isn't really true. C++ supports exceptions and dynamic memory allocation, but they're not encouraged (as in, you still only use them when necessary, like anything else). Writing something in C++ as opposed to C shouldn't change what data you're dynamically allocating and what data you're not dynamically allocating, and similarly, using C++ as opposed to C shouldn't imply that you all of a sudden have more exceptional behavior (that would certainly be a scary thought). I couldn't have said it better myself! My software uses dynamic allocation for the soft real time task that feeds notes to the hard real time task that controls the arms. It's quite elegant actually
|
# ? Jul 27, 2013 09:46 |
|
In most military and vehicle coding (car, boat, plane) standards, dynamic memory allocation is strictly forbidden for any part of the system that's mandatory for vehicle control. If the plane stalls because it's out of memory, that's bad, but having the lighting systems or in-vehicle infotainment systems reboot is fine.
|
# ? Jul 27, 2013 10:50 |
|
Placeholder cave tile assets... Replaced with real ones:
|
# ? Jul 27, 2013 17:41 |
|
Not sure if it's just me, but it looks more like a sort of brown forest than a cave. Especially the diagonals.
|
# ? Jul 27, 2013 20:52 |
|
The diagonals are going to get some more work shortly, we're missing a few tiles.
|
# ? Jul 27, 2013 21:01 |
|
Null Pointer posted:I've been writing an engine replacement for Dark Forces 2. Finish ittttttt. The XL Engine already supports the first Dark Forces, but I honestly think the second is better, and it's a much bigger pain in the rear end to get working on a modern machine.
|
# ? Jul 28, 2013 15:54 |
|
MIDI controller version of TC-11 (calling it TC-Data) now has a cool message stream on the performance view: The high speed scrolling isn't that useful, but it is fun to watch. I'm going to have a few ways of visualizing the data, including one where the lines stay put so you can actually read them.
|
# ? Jul 30, 2013 22:12 |
|
|
# ? May 9, 2024 08:04 |
|
Sir Davey posted:Well, this is my final bachelor's project actually so I am writing up a 60 page documentation, but it's all in french If the video gets a lot of success I'll definitely look into translating the interesting parts. Imagine the money you could make if you just put a webcam+mic there and have a site where people can request songs for $1.
|
# ? Jul 30, 2013 22:23 |