Archive for the 'Programming' Category

Page 2 of 4

Simply Cyanide – an Android App

Android logo

I’m working on my first Android app. I’ve done all sorts of programming in various languages, but I’ve never touched Java… so this project is mainly a learning experience for me.

Simply Cyanide is a simple yet elegant viewer for the web comic Cyanide and Happiness. There are other comic viewers already on the Android Market, but this one is designed specifically for C&H. Why? Well because I personally love the comics and I needed an easy project to get my feet wet. This was my solution.

I’ve got the basic functions of it working, I’m just polishing it up and figuring out how to sign the package so I can publish it on the Market. Although, once I figure out how to package it properly, I want to have some people who have an Android phone test it for me before I actually go and publish it (I don’t want to upload some shitty app and look like a total dumbass).

On a side note: I contacted the C&H artists to see  if they would give me permission to release it. I could probably release it without them giving me the thumbs up, but I would really like their approval.

Once I get a few people to test it and get some feedback, I’ll do a follow up post and give a rundown on all the features.

Here’s some screens of it running in the emulator:

viewing comic options menu

about dialog even opens videos!

Blog updated

I decided my blog needed to be tinkered with. I didn’t do an overhaul or anything, just messed with fonts and added some more CSS3. I uploaded two more headers into the rotation, too.

I need to start writing more about what I’m working on. People are always asking me and I never know where to begin. Here’s the thing: I’m always working on something. What it is can be totally different each day. Although right now I’m pretty focused on Zinger!. We’re closing in on the deadline for the Fretta Contest and we’re really excited about it. Not much is left, actually we’re just finishing up a few odds and ends.

I’m going to be writing a few articles related to Lua soon so you can look forward to seeing those. Actually I’ve already started… I just need some spare time to finish the first one (work has kept me so busy lately!). Technically I shouldn’t even be writing this now, I should be writing those… GOTTA GO!

Project overload

I’m swamped. Arcadium Software is working on a commercial project that has absorbed a metric fuckton of my time. No its not a game but we’re working on a web application for a big ass company. Its sorta weird how it came all about:

A few years ago my dad was using a really archaic method for keeping track of what vehicles he was in charge of. Like… where they were stationed. He wrote the vehicle number down on a magnet and placed it on a white board and moved them from square to square depending on where the vehicle got shipped. So I wrote him a digital version of that and since he struggles with computers, I totally mimicked the look of a board with magnets on it. Except you could double-click any “magnet” and open up extended information and tools on it. Needless to say this worked many times faster and he instantly fell in love with it. I spent loads of time in the UI so it was extremely user friendly.

Well he has since left that company and moved on to bigger and better things. Little did I know he continued to use that program and one day his boss saw him using it and one thing lead to another… next thing I know I’m in a meeting talking business for writing this company a custom software tool. So a lot of our time is being dedicated to that…

BUT THEN…

Garry decides that he wants to start a Fretta gamemode contest with some high dollar incentives. So now we’re working on THAT at the same time. Our goal is to submit two gamemodes so we really gotta bust ass on everything. We’re not going to sacrifice quality though, so its just time dedication.

BUT THEN…

All these new games have come out/are coming out and ahhhhhhhhhh. I’m deep into Fallout 3 right now, I’ve got Borderlands to focus on, Left 4 Dead 2 soon… Modern Warfare 2– fuuuuuuuuuuuuuu–

AND NOW FOR SOME COMPLETELY UNRELATED MEDIA

Awesome:

SMF Mod: Color Group Name In Post

Since I’ve been working on the Arcadium Software Forums, I’ve found a few things that I wanted to modify about SMF but couldn’t find a working mod to accomplish it. This is my first release. Basically it changes the users group name into whatever color their group has been designated. Simple. Easy. Nice.

Before:
Before

After:
After

Release: http://custom.simplemachines.org/mods/index.php?mod=2225

Let me know of any problems!

Reflection: Arcadium Software

What can I say? I’m a hobbyist. I like working on anything related to games. Even if I don’t finish a project per-say; I still enjoy the journey.

Modulus Software… Bakburner Etc… Arcadium Software. What’s up with all the name changes? Its just a branding really… nothing official. And to be honest they’re all 100% pointless. I’m pretty sure Arcadium Software is where we’ll stop, though. I’m confident in that because its the one that really means something to us; not just a name we invented just for the sake of having a name. We started out writing stuff for The Arcadium and all of our projects have evolved from that. It fits.

We’ve had our ups and downs as far as projects go. Those of you who’ve followed us from PGM to GATM until now have seen some interesting shit come and go. Successes? PGM+gNIX, Hoverboard, Firebox and MuseX, The Zinger Gamemode… plus Chad’s numerous useful modules. Failures and disappointments? GATM+Gear, Gadget, Zahmbeez!, The Zinger XNA Game/Arclyte, etc, etc, etc… lets not dwell on those; what we take away and learn from them is more important.

What have we learned? LOTS!

Chad and I both have what we’ve come to refer to as Developers A.D.D.! We really have a hard time focusing on projects. Its not a lack of commitment, its just we often find other things of interest that detours us from— holy shit that cat has a big nutsack!

Secondly, we’re also O.C.D.-ish perfectionists. Which is why we “start over from scratch” oh too often.

And finally… although we both retain the ability to do all sorts of extravagant stuff, including writing a game engine from scratch, what we’re really best at is developing for Garry’s Mod. Why? Its simple: its where our roots are at. And as a couple of programmers, using all the already existing content of Garry’s Mod makes our work so much easier. When we try to do standalone projects we find ourselves like a couple of bums wandering around town begging for content… “maps for the poor? a few models please? just spare me a texture or two? no I won’t buy alcohol with it… ninjas kidnapped my family I need assets to buy kung-fu lessons”.

So whats Arcadium Software up to these days? Surprisingly to most of you… LOADS. We don’t talk about our projects much anymore. We’ve learned that hype isn’t really something you need at the start. Sure, once you have something to show… something worth showing… then you can start fishing for interest and find yourself some followers to get decent feedback.

On my days off when I’m in my garage (because the rest of the family is sleeping) I’ve started working on the Arcadium Software website from my laptop. I’m trying to manage my time better. So instead of working on the website stuff during the day (when I have access to my desktop computer), I work on whatever project I’m currently occupied with. I’m maximizing my time! A concept new to me ;)

If you know what we’re up to, you sneaky bastard! If not… patience. Because we are up to stuff :D I’d like to invite you all the rejoin the forums and tinker with them; let us know of anything that needs to be fixed. (read this thread as to why you need to rejoin the forums)

Fuuuuuuuuuu-

So we spent about 6 hours attempting, reattempting and double reattempting to give the GUI textbox support for multiple colors… which by itself isn’t all that hard, but then trying to word wrap at the same time made it a pain in the ass! Eventually we figured it out and we were so excited.

Then we found it had an incredible FPS drop with a lot of text…

…so we reverted…

…then we found out that even without multiple colors there was an insane FPS drop with a lot of text…

…back to the drawing board.

True story bro.

What a difference a skin makes

Update on the GUI, started working on skinning. As always, make sure to view it in HD:

HD link

The Collector

This is a Garry’s Mod gamemode I began developing a few months ago. It started out as an experiment to see how much of a horror atmosphere I could introduce to an existing level using dynamically generated audio & visual effects.

Everyone loved how it turned out and asked me to add more of a “game” to it; which I eventually did. There are several puzzle-quests the players are put through (yes its multiplayer), but I didn’t spend any time in the video demonstrating them. Maybe I’ll show them in another video (if anyone is interested)

P.S. Click here and watch it in HD

GUI Demo 1

Now that I have my video recording working 100% (and at a higher quality I might add–thanks Borsty) I figured I would start posting videos of our progress. Not only is this interesting for anyone following our work (which is probably a very small group) but it will be fun to look back 6 months/1 year/5 years from now and see what it all started from.

HD link (recommended to read text)

From the ground up

Even though most of us are slightly derailed with real life shit, Arcadium Software has continued to progress on our flagship game, Zinger.

One interesting thing I keep reading on different sites is people referring to XNA as a beginner language for writing games. Although it can be interpreted this way, I have to disagree. In my opinion XNA (or C# w/ the XNA Game Studio… whatever) isn’t as much of a beginner language, but more that it has the possibility to be a rapid development language.

Yes, working with managed code is always easier than unmanaged code, but that doesn’t mean its anymore beginner friendly than the next. There is just as much of a learning curve writing C# applications as there are C++ applications. In the first few steps of writing a C++ application you echo “Hello, World!” to the console… and in C# its pretty much the same thing except you’re printing “Hello, World!” to a windows form.

Aside from that, coining it as beginner tends to assume it lacks the ability to be mastered… that there’s a skill cap on it. I’ve only been working with XNA a few months now and have already learned things I wish I knew at the start. Which is a perfect segway into the meat of this post…

When we first started writing Zinger it was with the mindset of “hurry! go go go go! do it! do it!”. We didn’t pay much attention to anything other than making leaps and bounds of progress. And it worked really well! We accomplished goals and milestones we could only dream about in the past. Only problem was the code became so concrete in its current application it made us worry. What if we want to use this code in a different game? Would we need to tear it all apart? Would it even be worth the effort?

About that same time we also started to notice a few issue with some of our implementations. There we limitations on features we knew needed adaptability down the road. Things like the GUI scaling properly as the resolutions changed while in-game… or the XML based menus requiring tricks and hacks for displaying screen resolutions. If you’re writing anything from scratch, you should NEVER have to use a trick or hack to make something work. Yes, I am personally responsible for most of the problems but hey… I’m new to the language and we didn’t set out to make an engine. That had to change.

After exploring a variety of artist styles, we’ve designed a new style of graphics we want our game to use, and we’re going to write an engine tailored to it. Why? Because we absolutely love the style and its very unique. Once we’ve completed the engine and Zinger, you will forever recognize the style to be an Arcadium Software product. Sort of how you can play almost any Source Engine game and say “yea, this is totally the Source Engine”.

As much as I would like to refrain saying we’re rewriting what we had from scratch, that’s exactly what we’re doing. Except now we already know how to do everything and have our code right in front of us to reference, which speeds things up tremendously. This time we have the right layout and I can’t even begin to explain how much better its already turning out.

In before tl;dr