Post by Bob on Mar 4, 2010 14:10:50 GMT -8
Gaimer - (Sourceforge)
So over the past couple of days I've put some time into writing an AIM trivia bot, specifically designed to sit in a chat room. This came out fairly well if I say so myself. It's just your basic ask-validate-reply operation. It does however have a hinting system that sits in its own thread, running alongside the main game loop.
Then I sat down today, as there's still a number of things to be done with it. What I ended up doing wasn't editing the trivia bot though. I ripped apart the application's main controller, wanting to make it a little more efficient. What I ended up with was the beginning of a platform.
Right now Gaimer is a rudimentary platform capable of supporting AIM text-based games. It facilitates the joining of chat rooms, sending and reading text to the chat room, as well as reacting to the commands of an admin user. By design the individual games should be 100% independent of each other. And, once Gaimer is done, will not need any configuration within the main controller itself (likely will end up using a Yaml config file).
So right now I am comfortably releasing an early alpha-phase (0.0.1-alpha). I've done little testing (the only testing with another person was with Aether, but both Gaimer and the trivia game have essentially been rewritten since then), and zero testing what so ever on a Windows or Mac box. However I've written the application in Ruby, so anyone with Ruby and the required gem (Net::TOC - "gem install -r net-toc") should be able to run this.
Todo
At this point if any of you (as I know the bulk of you guys use Windows) have Ruby installed I'd appreciate it if you'd download Gaimer and take it for a test drive. And if you know any Ruby, please tear my source to shreds. I'm still relatively new to the language and Ruby has a lot of conventions I'm still learning- so if anything you see stands out at you as wrong, yell at me about it.
Lastly, if you didn't catch it, I've linked you to the SourceForge page (where you can download the app) at the top of the post. Thanks guys.
So over the past couple of days I've put some time into writing an AIM trivia bot, specifically designed to sit in a chat room. This came out fairly well if I say so myself. It's just your basic ask-validate-reply operation. It does however have a hinting system that sits in its own thread, running alongside the main game loop.
Then I sat down today, as there's still a number of things to be done with it. What I ended up doing wasn't editing the trivia bot though. I ripped apart the application's main controller, wanting to make it a little more efficient. What I ended up with was the beginning of a platform.
Right now Gaimer is a rudimentary platform capable of supporting AIM text-based games. It facilitates the joining of chat rooms, sending and reading text to the chat room, as well as reacting to the commands of an admin user. By design the individual games should be 100% independent of each other. And, once Gaimer is done, will not need any configuration within the main controller itself (likely will end up using a Yaml config file).
So right now I am comfortably releasing an early alpha-phase (0.0.1-alpha). I've done little testing (the only testing with another person was with Aether, but both Gaimer and the trivia game have essentially been rewritten since then), and zero testing what so ever on a Windows or Mac box. However I've written the application in Ruby, so anyone with Ruby and the required gem (Net::TOC - "gem install -r net-toc") should be able to run this.
Todo
- Current:
- Gaimer:
- Move all configuration details out of gaimer.rb and into an external file- Yaml is likely, maybe XML.
- Define custom commands outside of gaimer.rb
- Move all configuration details out of gaimer.rb and into an external file- Yaml is likely, maybe XML.
- Trivia Game:
- Begin the hint thread when the question is asked, rather than waiting for people to guess for X amount of seconds.
- Handle ties differently? Currently they're allowed- multiple winners just get called together. Perhaps implement a tie breaker, with separate questions. Ask one, answer, win; repeat if no answer.
- Configuration file(s)!
- Begin the hint thread when the question is asked, rather than waiting for people to guess for X amount of seconds.
- Gaimer:
- Near Future:
- Implement a GUI (likely using the Ruby/Qt framework)
- Database support
- Better error handling
- Implement a GUI (likely using the Ruby/Qt framework)
At this point if any of you (as I know the bulk of you guys use Windows) have Ruby installed I'd appreciate it if you'd download Gaimer and take it for a test drive. And if you know any Ruby, please tear my source to shreds. I'm still relatively new to the language and Ruby has a lot of conventions I'm still learning- so if anything you see stands out at you as wrong, yell at me about it.
Lastly, if you didn't catch it, I've linked you to the SourceForge page (where you can download the app) at the top of the post. Thanks guys.