Archive for the 'Website' Category

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)

Server progress

Okay so I’ve been doing a lot of work on the server, its almost ready to start properly hosting game servers. On that note I’m going to officially introduce The Arcadium website (for those of you who haven’t found it).

What is The Arcadium? Its not just a Garry’s Mod server anymore… its the adopted branding of all our projects (“our” meaning Chad and I). We ditched the name Bakburner and prior to that we ditched the name Modulus. WHRY? Good question with a simple answer: none of them felt right. Plus we’re weird, and what does it really matter to you?

Anyways… we’re still putting stuff together but here’s the link: http://www.the-arcadium.com. The Bakburner website will also redirect there now as well.

Internet Tips & Tricks #2

I started this series with an article discussing some basic tips to help the casual intertubes surfer. Today let’s talk a little about web design.

1. CSS

css logoOne of the more important tools for designing a good website is CSS. Believe it or not people still find this as an optional component. Technically it is, but to put together a website that really pops out to the user its easiest to make use of this. There are certain abilities that CSS grants you that I do not believe can be accomplished with any other method. Overlapping images and absolute positioning of elements being two examples. I think (less of using javascript) there is no other way of accomplishing this. Yes it means you have to learn another “language”, but its really not an entire language. Its mostly an extension to HTML.

2. Validation

One of the important maxims of computer programming is: “Be conservative in what you produce; be liberal in what you accept.”

Browsers follow the second half of this maxim by accepting Web pages and trying to display them even if they’re not legal HTML. Usually this means that the browser will try to make educated guesses about what you probably meant. The problem is that different browsers (or even different versions of the same browser) will make different guesses about the same illegal construct; worse, if your HTML is really pathological, the browser could get hopelessly confused and produce a mangled mess, or even crash…

That’s quoted directly from the W3D Markup Validation Service help page. The reason why we make validated sites is to ensure our site looks right across all platforms and browsers. Its naive to think you can develop a site on Firefox and assume it will work on all browsers, especially if you have used improper markup.

While you’re at it, you’ll want to validate your CSS too. Checking yourself for errors only helps you get better and learn from your own mistakes. Once you’ve validated your page, they give you some nifty little badges as a reward.

3. Kuler

Kuler LogoAdobe makes a great product called Kuler. This can be an invaluable tool when designing a website and inventing a new color scheme for it. There are two versions available: one is an online version and a standalone version (which requires Adobe Air).

4. Web 2.0

The Web 2.0 movement is one of the greatest things to happen to the internet. Its a multifaceted concept; but my favorite part about it is utilizing the internet as a platform, instead of regarding it as a limitation. Prior to this idea, developers focused on the limitations that came with developing applications on the web and trying to find ways around it. Instead, you maximize the services that are only available when developing on the web.

Aside from that, we’ve seen a trend in the overall design (as far as layout and graphics) in modern websites. The sites are designed around the content instead of trying to jam content inside the design. We have brighter colors, flashier graphics, and a prominent KISS ideology.

There really is a lot more to it, which would require an entire blog post if I wanted to go into it in detail, so read that Wikipedia entry if you’re interested.

5. AJAX

AjaxPart of the Web 2.0 moment has included a exponential growth in the usage and progressional development of AJAX. This is really neat because it increases your ability to provide dynamic features on your website, but decrease the amount of page refreshing that it requires.

Instead of going to a website to upload an image, press upload, get redirected to another page while it uploads, then finally get redirected to a summary page, everything can happen on the same page. Inline moderation, instant font or color adjustments, and toggling preview captions are just a few examples of what AJAX can do.

AJAX is mostly accomplished with the use of well designed Javascript working with elements inside your site. There are already tons of prebuilt libraries to make many of the AJAX features you may be looking for readily available. One of the more popular being jQuery.

Ze Upgrades!

I had to do some work on my computer lately. When I bought and built this computer I was retarded and bought a small but extremely fast hard drive… high data rate and 10,000RPM! What the fuck was I thinking?! Yes the performance is noticeable, but it really wasn’t worth the cost-to-gigabyte ratio. So most of my applications and games were on my older IDE hard drive from my last computer anyways… which was okay but it didn’t have the speed I was looking for. So I opened up Newegg and bought a newer, larger, SATA drive.

So it’s been a process but I’ve finally got my OS upgraded. I went with Windows 7… yea yea I know its only a beta, but I didn’t feel like sticking with XP, and didn’t feel like buying Vista because Windows 7 is around the corner. So far so good.

gadget1

As you can kinda see above, Gadget has been upgraded too. Chad did some slick stuff restructuring the layout and design of the engine, and this time we’re working on a lot of the low level utilities before we get ahead of ourselves. After a bit of debate, we moved to Multibyte Character Sets so that (if needed) we can support international languages. You can see our silly “TODO” list off to the side… which is piss poor but it works for now. We need a real project management system… any ideas?

Also added some new headers to the top of my blog, they are all pictures I’ve personally taken. Last time I kept the normal Wordpress blog title text… which forced me to filter rape my images so it would show up against all the backgrounds. This time I just added the text to the header myself and avoided that problem all together.

Midphase, you suck.

My old webhost keeps emailing me… I’ve ignored them thus far but yesterday I replied:

email

I think I made my point.

Ohi, didn’t see you there

Long blog post delay is long :(

It’s been a while, but in my defense… fuck you. Anyways. Post-holiday time is always hectic. It’s like you’re starting a new year and you have to first pick yourself up from the lazy holiday season. It’s a really poorly designed system. The holidays should be in the middle of the year, or like right after we get tax returns. That way when the government coughs up a bunch of cash back to us slaves, we can inject it right back into the economy… instead of trying to save it (which we don’t) and end up being broke by holiday season.

So yesterday was my daughters birthday party; good times. But because we have some new people working on my shift which I’m still training (and aren’t ready to work alone yet) my work schedule has been fucked up. I have to work 7 days straight and I didn’t even get the day off for her party. So I had to come home from work, help finish everything for the party, take a few hour nap and wake up and act all happy. Then after everyone left I tried to get some shut eye… a whopping hour and a half before work. Needless to say I was totally tired as a mudda fucka and started hallucinating on my drive home!

Couple of things I plan on doing this year: Chad and I are still discussing our game, we’ve even created a svn repository and sorta tinkering. Well it’s mainly Chad tinkering and me thinkering. I haven’t actually contributed to the code yet, but I did upgrade my Visual Studio installation in preparation for it! From what I can tell we’re going to make Zinger into a stand alone game, or maybe not… we don’t know yet but the first step is the game engine anyway.

I also started using my Google Calender; such an epic tool. I have so many things going on at any given time that I lose track of them so easily. I made a promise to myself to start utilizing it. WHRY?! Dude the service is free and it iterates into my phone perfectly… why wouldn’t I?

Since GATM went down I find myself playing games more often… love it! But my developer side is hungry. Luckily I’ve found a friend in Waxx and the Mine-Dog community. We’ve been working together a lot more lately and I’ve been able to tinker with their website and all that fun stuff. Will be interesting to see what we can manage in 2009.

Speaking of which, in 2009 I’ll be aiming to keep my blog more frequently updated, and add a Twitter thingymajiggy. I’ll probably start that right after I finish this blog post. DONE!

Let’s see, I think that about sums up this post. OH! One last thing, I think I want to take a film class of sorts. Possibly a filming techniques and editing course. I’ve always wanted to make machinima but lacked the video editing ability. I downloaded a demo for Sony Vegas once and I felt like a fag in a titty bar.

GATM?

When I changed my webhosts I neglected to move over gatmhq.com. WHRY WOULD I DO THAT?!? Because I was trying to prepare and design a new site prior to the big move. Anyways, I did a complete website backup, including all MySQL information on Oct 17th… that was the last time I did it.

Then my old webhost got mad I didn’t pay them and suspended my account on the 28th, which is almost 2 weeks of lost forum data. I tried desperately to convince them (without paying them for another year) to give me access to my cPanel or at least send me the latest GATM forum database. They weren’t having any of it… it doesn’t help when your main domain is already pointing to a new webhost service :P

gatm4everAnyways, that was sort of the straw the broke the camels back… so to say.

GATM has been a frustration over the last 6 months. Its been a constant uphill battle trying to keep things running. Toward the end none of the members got along, the admins bickered and fought between themselves and our servers were usually empty.

Sandbox servers are the biggest pain in the ass to keep maintained. Every addon fucks up another addon, one thing breaks another, people want this… they hate that… add this… remove that… this map sucks… add that map… ARGGH!!

I had considered developing some custom games for the community and eventually shutdown the Sandbox server (or make it a lot more simple, easier to maintain) but then someone stole all our custom games and that sorta ended that idea. Plus, every time I tried to sit down and work on a new custom gamemode, I couldn’t focus on it because there was thread after thread with lists of the most minor bullshit they wanted fixed on the server… but 90% of them were issues because addons broke other shit and it wasn’t anything I could fix unless I just rewrote the entire addon myself.

Chad and I have been severely exhausted trying to keep up with everything and eventually we’ve just ran out of fuel. Scripting for gmod is extremely boring and monotonous now… we can’t find anything that keeps our attention. It used to be fun and exciting developing new stuff, but the recent versions have added such tremendous problems that we have to come up with three workarounds to fix one feature we want to add, but then it isn’t stable and it turns out being shit compared to what we had planned. We miss gmod9 :(

People kept trying to offer to help but it seems no one had the technical skills to really take any of the workload off. We had to maintain the server hardware and system configuration, maintain and develop the website and forums, maintain and develop custom Lua scripts for The Arcadium and all Garry’s Mod servers, setting up and running other game servers (CSS, TF2, etc) and then deal with all the problems in between.

So after long consideration I’ve decided not to bring gatmhq.com back up, nor do we have any plans on supporting the server. I guess it will keep running, but its up to the less-than-active admins to keep that going.

Its ironic though… this Halloween would have been our 2 year anniversary. Oct 31st 2006 was the day I purchased the domain for PGM and made plans to start the community… which is what turned into GATM.

What’s next? Mostly enjoying playing games again… and overall having a good time instead of working on gmod shit non-stop. Chad and I have already started planning a new game… no not a gamemode, but our own game. We’ll keep you up to date.

Server Logs: when XML and PHP have sex

My homey Chad has introduced me to the usage of XML. At first, I really didn’t know much about it besides the fact RSS feeds use it. But now the more I learn the more I love it.

When we wrote the logs for Gear, we had a couple of choices. We could bloat a MySQL database with tons of log events, write it all to a flat file, or devise something new. Which chose the latter and our answer was XML. With the ability to store attributes and content, have parents and all sorts of hierarchy… its easily one of the best decisions we’ve made.

But when we get back to the topic of having the website and game servers talk, we run into a hiccup. All our events are stored in different sub tables; which means the log has a tables like <chatlog> and <eventlog>. Yeah that’s all fine and dandy, and we love how it turned out… but what happens when people want to view said logs? They aren’t shuffled together in chronological order… they’re all separate. SHIT FUCK DAMN!

Putting them together in order wasn’t as easy as it should have been. Well actually I’m lying; it was easy once I figured out how to do it. That’s the thing about programming/scripting/developing custom shit: its not that the syntax or platform limits your ability to do something, or that it requires butt-loads of work… its being creative enough to figure out how to fucking do it. WHRY?!? Because not everything you want to do has been done by someone else in easy copypasta format.

Server LogsWhen I started working on it I was looking for some PHP command that automagically did it for me, and I think that was my problem. When trolling the PHP manual website and furiously searching Google for “put my XML in order” was no help, I decided to do it on my own.

Basically it came down to putting all the data into an array, and then sorting said array with the usort function. SUCCESS!

The only thing left was to display the data in a readable format. So mix in a tad of HTML, add a pinch of CSS… blend until sexy and you’ve got a finished product!