collapse collapse

* Who's Online

  • Dot Guests: 100
  • Dot Hidden: 0
  • Dot Users: 0

There aren't any users online.

* Board Stats

  • stats Total Members: 88
  • stats Total Posts: 11164
  • stats Total Topics: 1700
  • stats Total Categories: 4
  • stats Total Boards: 76
  • stats Most Online: 1470

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Nathan

Pages: [1] 2 3 4 5 6
News / Updates
« on: October 30, 2015, 08:27:36 pm »
As of yesterday has been renewed for another year \o/

I have also added a new (hidden) bbcode to make posting easier. I personally think bbcode sucks. Markdown isn't perfect  - but it's still better and easier/more natural to use.

To use markdown just use the md bbcode:

Code: [Select]
[md] text [/md]


An h1 header

Paragraphs are separated by a blank line.

2nd paragraph. Italic, bold, and monospace. Itemized listslook like:

  • this one
  • that one
  • the other one

Note that --- not considering the asterisk --- the actual textcontent starts at 4-columns in.


Block quotes are  written like so.


They can span multiple paragraphs,  if you like.

Use 3 dashes for an em-dash. Use 2 dashes for ranges (ex., "it's allin chapters 12--14"). Three dots ... will be converted to an ellipsis.Unicode is supported. ☺

An h2 header

Here's a numbered list:

  1. first item
  2. second item
  3. third item

Code: [Select]
[md]An h1 header

Paragraphs are separated by a blank line.

2nd paragraph. *Italic*, **bold**, and `monospace`. Itemized lists
look like:

  * this one
  * that one
  * the other one

Note that --- not considering the asterisk --- the actual text
content starts at 4-columns in.

> Block quotes are
> written like so.
> They can span multiple paragraphs,
> if you like.

Use 3 dashes for an em-dash. Use 2 dashes for ranges (ex., "it's all
in chapters 12--14"). Three dots ... will be converted to an ellipsis.
Unicode is supported. ☺

An h2 header

Here's a numbered list:

 1. first item
 2. second item
 3. third item[/md]

Updates / Added youtube bbcode
« on: December 14, 2014, 11:35:24 pm »
I have added youtube bbcode - the button itself doesn't seem to currently work but to use it just wrap it in youtube tags - ie:

Code: [Select]
You can read about the mod here:

Project Advertisment / Axios RPG
« on: December 14, 2014, 11:32:13 pm »
Ever since I started Axios Engine I wanted to create my own RPG game. The specific nature of the RPG is up in the air - but I have been working on the engine before the story. Whatever the story is - it will be amazing.

The time has come to show some clips:

Here is the original video:

Then I added dialog and door support/map switching recently:

Most recently I have implemented basic AI for the NPCs:

I will keep this thread up to date on progress and any releases. Stay tuned! There is still a lot of work to be done in it - but it will be open source when it is completed.

I am looking for help with the following:
  • C#/XNA
  • Art
  • Music

Project Advertisment / FTP honeypot in C++
« on: April 27, 2014, 08:43:43 pm »
Hey all I noticed that people were trying to access my FTP service and instead of just turning up logging I decided to write a quick FTP honeypot (turning up logging won't tell me about any files they are wanting to upload or download - as I'm not granting them access).

I call it ftphoney - you can grab a copy for Windows/Linux (Debian) here

The basic idea is that it accepts any commands and will do nothing in return (sort of like a bit bucket). It does utilize threads (real threads - not fake Python threads ;) ). My personal interest is seeing the password as well as any files they request.

Right now it doesn't implement ACTIVE or PASV protocols but they should be fairly trivial to put in (so they won't see directory listings). What I would like to do is present a root file system along with fake files and see what they do.

If you want to test it out - point your FTP client to on port 21.

General Talk / Happy Egg Collecting Day
« on: April 20, 2014, 03:17:37 pm »
Happy Egg Collecting Day!!!

Projects / srchub - free source code hosting
« on: July 30, 2013, 09:50:41 pm »
Sourcehub is a free source code hosting service ran by yours truly.

I currently offer hosting for:

  • git
  • subversion
  • mercurial

To get a repo just register, login, click "Request project". Then I will need to go in and approve it :).

Sourcehub offers downloads (or also known as releases), issue tracker, wiki, and even code reviews. You can even add other people as contributors. The reason why I am doing this is simply because other free services have a habit of removing features (or shutting down in the case of google code) that you are using from under you - this will never happen at sourcehub.

Sourcehub is a fork of indefero with many bug fixes and new features. And as an olive branch - not only have I released the source code for srchub (something which is not technically required by the GPL), but I have also created a debian installer. So I have nothing to hide and I guarantee no PRISM backdoors to the NSA :). Also the installer will allow you to install either indefero or srchub. The srchub installer is naturally also open source.

12/23/2015 updates

  • 2 sets of backups - including:
    • tarsnap
    • rsync + attic
  • OTP has been intergrated
  • Project export and scrape of public projects
  • Service moved to gandi VPS
  • more than 170 projects hosted

Old thread

To show some evidence that I am somewhat capable of running this service: you can view stats here. Backups are performed using Backuppc to a readynas with 8TB of disk.

Where do I want to go with this?

* Offer jenkins hosting for every project as a continuous integration service
* Integrate OTP to passwords
* Openauth intergration
* Ability to export and import a project

Here are some FAQs:

1. Are you currently encrypting or are you going to encrypt repos?

I'm thinking about this - and currently I am not encrypting repos. This is something I would like to look into - however right now the drives in the KVM hosts are software RAID-1 7200RPM drives. So while I am already taking a hit from the software RAID, I wouldn't want to add another layer of potential bottlenecks. However, if I shoved some SSDs into the servers I think I could very well set that up.

2. Software RAID sucks!!! You should feel bad!

Yes, software RAID is much more resource intensive than hardware RAID but Linux software RAID works so well. For example - if a hardware RAID controller fails - I may have to purchase (or already have an extra) the same controller. With software Linux RAID I can take both drives, put them into another system - reconfigure some stuff like networking and I'm back up and running. I have personally done this before with great success. However SSDs would negate the performance hits (in my opinion).

3. You use backuppc to backup the repos as well?

Currently - yes. Since the repos are not under a high load - the probability of having a half-backup is very remote. I know about the KDE incident - which you can read about here and here.

4. I don't trust your service because [insert some vague reason here]. Would you assist me in setting up my own sourcehub/indefero instance?

To an extent. I'm not going to SSH to your box and set it up for you, but I will certainly point out documentation and answer questions about any issues you run into.

General Talk / Jenkins hosting
« on: April 18, 2013, 09:53:01 pm »
I would like to officially announce that I am hosting and supporting a jenkins instance.

Jenkins is a product that automatically compiles/builds your project, runs any tests, alerts you of failed tests and can even automatically deploy the compiled product to another location. This is huge when developing a project because you can see if your commit broke something AND jenkins can keep a copy of your successful builds. It can even build and push to your site automatically.

If you have any programming projects - you should contact me.

I currently have the following VMs ready to build:

  • Debian
  • CentOS
  • Windows

Updates / Forum Features
« on: October 21, 2012, 12:33:15 am »
I think we need this to point out some of the more subtle features of the forum.

First and foremost:

Code Tag
Code: [Select]
The code tag does NOT require a language, it will attempt automatically figure out what language you typed and highlight accordingly:

Code: [Select]
print "hello, world";
Sometimes it can't figure it out like so:

Code: [Select]
cout << "hello, world" << endl;
So then you need to specify it using code=lang ex code=cpp

Code: C++
  1. cout << "hello, world" << endl;

Spoiler tag

This tag will allow you to "hide" text from people who may not want to see it. It is call "spoiler" because it may spoil a surprise for a book/movie/show ect

Code: [Select]
(click to show/hide)

LaTex tag

This tag allows to write LaTex code to draw/write out math symbols:

Code: [Select]
[tex]{\Delta t}=t_{2}-t_{1}[/tex]
{\Delta t}=t_{2}-t_{1}

Thread reviews

Thread reviews all you to rate a thread. They will not appear for your own threads :).


Inline attachments

Inline attachments allow you to attach files, and images inline with the post without requiring a user to scroll down to the bottom to download/view it.

Updates / Upgrade complete!
« on: September 07, 2012, 11:50:19 pm »
The forum has been upgraded! The upgrade was a test of my patience but it seemed to work. Let me know if you notice any problems.
I'll be installing mods that were in the old forum plus some new ones.

So I think I've made the final tweaks for today (tomorrow?).  Let know if anything is broken!

General Talk / Shameless plug: Intro To Reverse Engineering Presentation
« on: September 03, 2012, 11:15:11 pm »
I will be giving a presentation on reverse engineering and you will be able to join via the web!

November 7th at 1:00PM CST

Some of the topics include (but not limited to):
* Difference between disassembly and decompilation
* Decompiling .Net applications
* Using IDA Pro to disassemble binaries
* Using Olly Debugger to debug binaries
* Bypass procedures in a piece of software (ie skip asking for CD key)
(I would demo how to break down malware but for obvious reasons, software that I write with protection will be much better. This is just going to be a simple demo.)
* Analyze patterns to find malicious trends using a combination of sysinternals tools and IDA pro

If time permits
* Creating binary patches

If I get enough interest I may want to make this a monthly or weekly thing.

I will post the URL and details for the web conference Nov 7th.

Project Advertisment / Axios Brick Breaker
« on: April 01, 2012, 08:56:43 pm »
My next game will be a "breakout" type game. Development is still in progress, I have most of the coding done. Once I feel it is complete enough I will release the source code AND release it to the Market places.

Though, I need YOUR help celestial coding community!
I am in desperate need of levels. Levels are very easy to create, you can view the level format here:
If you submit a level I will list you in the credits.
If you have any questions about this project or levels feel free to ask here or privately.

Once the project is released then I will update this post with the proper links.

Project Advertisment / Axios Tennis
« on: April 01, 2012, 05:47:15 pm »
Axios Tennis is just the classic 2 paddle and a ball game. Nothing really special, it's just the first game created using Axios Engine.

Windows version can be downloaded here:
Windows Phone version can be download here: or

Xbox 360 version not available at this time.

Source code available here:

Updates /
« on: October 06, 2011, 12:07:01 am » has been renewed for another year.

Updates / Moving to a VM
« on: September 14, 2011, 07:46:47 pm »
This Friday (9/16) I am going to move all the data on my main server to a VM.
I will need to take this server into a "maintenance" state, so it will be down but hopefully only for a short while.

General Talk / Terraria
« on: June 12, 2011, 01:21:40 pm »
Anyone else play it? I am very addicted to it. If anyone is interested I could put up a permanent server :).

I started a large/advanced map myself.

If you don't have it - it's only $9.99 off of steam very cheap for a game with high replay value and lifetime updates.

Updates / New backup system
« on: May 03, 2011, 09:56:52 pm »

I got the 6TB of storage setup, and installed a backup software called backuppc. While I have configured it to back up other servers, the important part is that it is backing up this server about every 4 hours (previously once/24 hours), and MySQL dumps happens every 8 hours, at least until I can clean up the old unused websites (instead of the previous once/24 hours). Backuppc also allows supports incremental backups so now my data storage requirements should drop dramatically. And it is easy to view previous versions, as well as downloading a snapshot at a particular time.
I also have an account at and while they appear to be suspicious, I have an account with the ability to upload files (which means that it doesn't seem to be a scam) so I plan on downloading a snapshot every once and a while (probably once a month), encrypting it, and uploading it offsite to at least have something in case of fire/flood/2012 apocalypse. If they do disappear off the face of the planet, then I'll figure out a different "solution" but that should work for awhile.

I am currently in the process of transferring the data off of spare harddrives to use in another RAID array.

And closing - Justin I really want to help you with coding, and it is on my to-do list to get it working on Mac/Linux...unfortunately being a "Super System Administrator" tends to take priority :(. I just wish I knew people who lived around me who I could easily get up to speed on my infrastructure and trust both at a console and not going to snap and destroy what I worked hard to build :).

Edit - I should mention that while dumping the database during the day isn't the best idea, but my next plan of attack is to P2V this environment and add another MySQL server on the network that replicates this one so I can dump the db on the server all day without, in theory, affecting this system.

Updates / NAS setup
« on: April 30, 2011, 06:01:49 pm »
I settled for the Netgear ReadyNAS NV+ (4 disks @ 2TB each w/ X-RAID), I couldn't get the towerraid to work and the RAID card that came with it wasn't stable (claimed disks where in an array when I couldn't remove them)

When I get the time/money I'm going to give this a spin and see how well it works:

I'll also be setting up BackupPC ( ) as a "proper" backup system (instead of Nathanware scripts).

Updates / More storage
« on: March 31, 2011, 12:06:31 am »
I made several major purchases towards a more "professional" hosting environment.

TowerRAID 8 Bay eSATA RAID 0/1/10/5/JBOD Performance Tower with 6G PCIe Card TR8M-BP (Black)

Vantec 6-Port SATA II 150 PCI Host Card with RAID

HDD 2T|SEAGATE ST2000DL003 64M % - OEM
5 @ $79.99 = $399.95

Total cost (free shipping and no taxes wewt!): $745.61

I plan on purchasing 4 (one spare) more 2TB HDs to expand the RAID but 5 is good to start with which will net me 8TB (with RAID 5). Total size I will get is 14TB (8 disks @ 2TB - 1 disk for hot spare).

The reason why I purchased the 8 bay is because although it has external SATA and no networking, it's about the same price as a 2-4 NAS.
The RAID card was arbitrary, it seemed to have the best rating. And although I know I picked a slower HD (5400 vs 7200), judging from the reviews it doesn't seem to have a higher failure rate as other 2TB drives. Which, I have noticed that the higher capacity drives seem to die sooner than smaller ones, which this could be due to the speed. In the RAID, at this point anyways, I am not concerned about speed I just need capacity as I have hit a wall when it comes to storage. And I need reliable storage - otherwise I would just have purchased a dock and the drives.

Updates / Deleting spam accounts
« on: March 20, 2011, 04:19:59 pm »
I'm on a mission to prune spam accounts. There is still a bunch of spam users, but I have thought of a way to cut down on them being able to register in the first place.

php / ShadowIce's question
« on: February 13, 2011, 04:49:10 pm »
Question from the chat:

Code: PHP
  1. <?php
  2. $hexstr = "#FF0000";
  3. $firstgroup = substr($hexstr, 1, 2);
  4. echo $firstgroup;
  5. ?>

General Talk / Hardware upgrades
« on: February 12, 2011, 11:17:29 pm »
I know I have mentioned to a few people about my backup solution (perform a full file/MySQL dump backup) every night. As of right now that doesn't work too well for me to maintain because I have attempted to burn the backups to DVD but it's simply too much and I can't burn it fast enough. I just bought a new computer so I will be holding off purchasing anything expensive for awhile but my plan is to buy this:
With 4 1TB drives.
Which I estimate will cost about $70/each (with a spare) so total:
NAS - $329.99
5 1TB HDs - $350
Total - $670.99

On the same thought, blu-ray has come down in price and being able to store 25GB/disc vs 4.7GB/disc will go a long way and make the manual process of backups a lot easier.
That cost I estimate for the burner ~$95 ( ) and media seems to be about $25-30 for a pack of 25 discs.
Burner - $95
Disc - $25
Total - $120

I would like to purchase something offsite like S3, but the cost does not scale. Also, I need to purchase 3 servers/systems to run a development and 2 production Hypervisiors (VM hosts). I estimate this will be ~$500/system. The purpose of this is to consolidate what I have running today and make it easier to add systems. Why 2 production Hypervisiors? 2 Domain Controller servers, 2 DNS servers, load balancing - it wouldn't make sense that they live on the same hypervisior.
Total - $1,500

Total cost to upgrade - ~$2,290.99

Everything seems to be running fine right now (knock on wood) but I would really like to expand and become a little more "professional" in my hosting services. I can probably eat a lot of those costs, but I would really appreciate it if some people made a few large donations :).

General Talk / Happy Holidays!
« on: December 25, 2010, 08:44:59 pm »
I think at this point I need to say something profound.

It surely has been a ride ever since I started hosting. And I perceive even more challenges in the coming years.
It is sites like this that I host that drive me to put as much free effort I can into making the service even better and keep pushing for the core values of why I started Datanethost. Hopefully one day, together, we can create a hosting platform that out performs Google's in usability, services, and last but most important support. Keep up the posting, and don't be a stranger to this forum or to me. I have an open door policy. And if you think I am ignoring you, I probably just missed your message keep contacting me until I respond.

Merry Christmas (or Happy Holidays) and Happy New Year. May next year bring even more and better projects.

- Nathan

Updates / Transferring registrars
« on: December 12, 2010, 09:31:29 am »
I am changing registrars to a new registrar who is a little more expensive but has API to allow me to hook my hosting panel into more automation.

This site may be down for a time, but I imagine it will only be for a short time.

Java / Android Development
« on: November 27, 2010, 11:59:32 pm »
This is a WIP document of how to program Android applications.
I'm thinking about creating a separate subforum for it, but I haven't decided.
In the meanwhile, check out the attached document.

Updates / New mailing lists
« on: October 26, 2010, 11:28:44 pm »
I have setup several mailing lists to help me (and you) keep track of updates at Datanethost.

You can see a list here:

Feel free to signup for any of the mailing lists. Logins is a special one which I can't imagine anyone wanting to sign up but you can look at the archives.

Updates / Issues with the server
« on: October 18, 2010, 11:10:50 pm »
I am having some issues with another user.
Due to their load, shared hosting is NOT for them, I am setting them up with a VPS.

I have also ordered more RAM ($400 worth) which will help the situation.

Stay tuned.

Project Advertisment / SimpleGameLibrary
« on: October 11, 2010, 09:36:59 pm »
SimpleGameLibrary (or SGL) is a framework that will allow you to create games fairly easily and without have to learn complex coding styles.

Youtube sample:

Sample source:
Code: C++
  1. #include <iostream>
  2. #include "SGL.h"
  4. using namespace std;
  5. using namespace SGLEngine;
  7. using namespace irr;
  8. using namespace core;
  9. using namespace scene;
  10. using namespace video;
  11. using namespace io;
  12. using namespace gui;
  14. class CSquare : public CObject2D {
  15.         public:
  16.                 CSquare()
  17.                 {
  19.                 }
  20.         void init(SGL* engine)
  21.         {
  22.                 this->addLine(vector2di(1,1), vector2di(1,100), engine->getSGLColor()->DARK_GREEN);
  23.                 this->addLine(vector2di(1,100), vector2di(100,100), engine->getSGLColor()->DARK_GREEN);
  24.                 this->addLine(vector2di(100,100), vector2di(100,1), engine->getSGLColor()->DARK_GREEN);
  25.                 this->addLine(vector2di(100,1), vector2di(1,1), engine->getSGLColor()->DARK_GREEN);
  26.         }
  27. };
  29. class Enemy : public CObject2D {
  30.         void init(SGL* engine)
  31.         {
  32.                 this->addLine(vector2di(1,1), vector2di(100,1), engine->getSGLColor()->WHITE);
  33.                 this->addLine(vector2di(100,1), vector2di(50,50), engine->getSGLColor()->WHITE);
  34.                 this->addLine(vector2di(50,50), vector2di(1,1), engine->getSGLColor()->WHITE);
  35.         }
  36. };
  38. class CBullet : public CObject2D {
  40. };
  42. class MoveSquare : public SGLAction {
  43.         public:
  44.                 MoveSquare()
  45.                 {
  47.                 }
  48.                 virtual void Action(const irr::SEvent& irrevent, SGL* engine)
  49.                 {
  50.                         if (irrevent.KeyInput.Key == irr::KEY_DOWN && irrevent.KeyInput.PressedDown)
  51.                                 engine->get2DObject("cs1")->Move(0,8);
  53.                         if (irrevent.KeyInput.Key == irr::KEY_UP && irrevent.KeyInput.PressedDown)
  54.                                 engine->get2DObject("cs1")->Move(0,-8);
  56.                         if (irrevent.KeyInput.Key == irr::KEY_LEFT && irrevent.KeyInput.PressedDown)
  57.                         {
  58.                                 engine->get2DObject("cs1")->Move(-8,0);
  59.                                 engine->get2DObject("bullet")->Move(-8, 0);
  60.                         }
  62.                         if (irrevent.KeyInput.Key == irr::KEY_RIGHT && irrevent.KeyInput.PressedDown)
  63.                         {
  64.                                 engine->get2DObject("cs1")->Move(8,0);
  65.                                 engine->get2DObject("bullet")->Move(8, 0);
  66.                         }
  67.                 }
  68. };
  70. class Esckey : public SGLAction {
  71.         virtual void Action(const irr::SEvent& irrevent, SGL* engine)
  72.         {
  73.                 if (irrevent.KeyInput.Key == irr::KEY_ESCAPE && irrevent.KeyInput.PressedDown)
  74.                         engine->End();
  75.         }
  76. };
  78. class FireAction : public SGLAction {
  79.         virtual void Action(const irr::SEvent& irrevent, SGL* engine)
  80.         {
  81.                 if (irrevent.KeyInput.Key == irr::KEY_SPACE && irrevent.KeyInput.PressedDown)
  82.                         engine->get2DObject("bullet")->setYVelocity(-1);
  83.         }
  84. };
  86. class ReloadAction : public SGLAction {
  87.         virtual void Action(const irr::SEvent& irrevent, SGL* engine)
  88.         {
  89.                 if (irrevent.KeyInput.Key == irr::KEY_KEY_R)
  90.                 {
  91.                         engine->get2DObject("e1")->setDisplay(true);
  92.                         engine->get2DObject("e2")->setDisplay(true);
  93.                 }
  94.         }
  95. };
  97. start()
  98. {
  99.         SGLSettings set;
  100.         set.DriverType = irr::video::EDT_OPENGL;
  101.         SGL engine(set);
  102.         CBullet * bullet;
  103.         bullet = new CBullet();
  104.         bullet->addLine(vector2di(1,1), vector2di(1,100), engine.getSGLColor()->DARK_GREEN);
  105.         bullet->Move(300, 350);
  106.         engine.AddKeyEvent(new MoveSquare());
  107.         engine.AddKeyEvent(new Esckey());
  108.         engine.AddKeyEvent(new FireAction());
  109.         engine.AddKeyEvent(new ReloadAction());
  110.         engine.AddObject(new CSquare(), "cs1");
  111.         engine.AddObject(bullet, "bullet");
  112.         engine.AddObject(new Enemy(), "e1");
  113.         engine.AddObject(new Enemy(), "e2");
  114.         engine.get2DObject("e1")->Move(200, 50);
  115.         engine.get2DObject("e2")->Move(400, 50);
  116.         engine.get2DObject("cs1")->Move(250, 500);
  117.         irr::video::SColor back = engine.getSGLColor()->BLACK;
  118.         SGLSceneSettings sceneset;
  119.         sceneset.color = back;
  120.         while(engine.DeviceIsRunning())
  121.         {
  122.                 if (bullet->getY() < 0)
  123.                 {
  124.                         irr::s32 bx, by;
  125.                         bx = engine.get2DObject("cs1")->getX();
  126.                         by = engine.get2DObject("cs1")->getY();
  127.                         bullet->reset();
  128.                         bullet->setYVelocity(0);
  129.                         bullet->Move(bx+50, by-150);
  130.                 }
  131.                 if (bullet->collidesWith(engine.get2DObject("e1")))
  132.                 {
  133.                         irr::s32 bx, by;
  134.                         bx = engine.get2DObject("cs1")->getX();
  135.                         by = engine.get2DObject("cs1")->getY();
  136.                         bullet->reset();
  137.                         bullet->setYVelocity(0);
  138.                         bullet->Move(bx+50, by-150);
  139.                         engine.get2DObject("e1")->setDisplay(false);
  140.                 }
  141.                 if (bullet->collidesWith(engine.get2DObject("e2")))
  142.                 {
  143.                         irr::s32 bx, by;
  144.                         bx = engine.get2DObject("cs1")->getX();
  145.                         by = engine.get2DObject("cs1")->getY();
  146.                         bullet->reset();
  147.                         bullet->setYVelocity(0);
  148.                         bullet->Move(bx+50, by-150);
  149.                         engine.get2DObject("e2")->setDisplay(false);
  150.                 }
  151.                 engine.BeginScene(sceneset);
  152.                 engine.DrawAll();
  154.         }
  155.         return 0;
  156. }

Next steps:
  • Improve collision detection
  • Implement handling of sprites/2D images

Short term goals:
  • Create several games using the framework
  • Documentation

Future goals:
  • 3D graphics
  • 3D collision detection

C++ / Game engine thoughts
« on: August 04, 2010, 10:17:41 pm »
I want to re-create my game engine from scratch (again), and I was wondering what your thoughts would be on the functionality of this code
My goal is simplicity

Code: C++
  1. class Object
  2. {
  3.         public:
  4.                 string name;
  5. }
  7. class Object3D : public Object
  8. {
  9.         public:
  10.                 int x;
  11.                 int y;
  12.                 int z;
  13. }
  15. class Object2D : public Object
  16. {
  17.         public:
  18.                 int x;
  19.                 int y;
  20. }
  22. class cube : public Object3D
  23. {
  24.         cube() : x(0), y(0), z(0), name("cube") {}
  25. }
  27. class square
  28. {
  29.         ...
  30. }
  32. int main()
  33. {
  34.         SGL Engine(paramters);
  36.         c = cube();
  37.         s = square();
  39.         Engine->Lib3D->AddCube(&c, "cube");
  40.         Engine->Lib2D->AddSquare(&s, "square");
  41.         Engine->Input->keyboard(&kbevent);
  42.         while(Engine->running())
  43.         {
  44.                 if (x)
  45.                         Engine->Draw("cube");
  46.                 else
  47.                         Engine->Draw("square");
  48.         }
  49. }
  51. void kbevent(event-paramteres)
  52. {
  53.         if (key.up)
  54.                 engineptr->objects["cube"]->move(x,y);
  55. }

I just wanted to see what your thoughts are.

Second edit!

[edited name=Nathan date=1280978865][/edited]

General Talk / Alien Swarm
« on: July 21, 2010, 08:54:13 pm »
I played this the other day:

And was not impressed, but my one friend really likes it.

General Talk / New job
« on: July 11, 2010, 09:21:13 pm »
I know this is kind of late, but....

As of June 21st I am a full time, permanent, employee of Argonne National Labs. My official title is "IT Solutions Associate".

Pages: [1] 2 3 4 5 6


* Search

* Recent Posts

I miss the chatbox by Shishka
[August 27, 2019, 11:52:39 pm]

Image Comparison by Shishka
[May 15, 2017, 01:18:02 pm]

Re: srchub - free source code hosting by Nathan
[December 14, 2015, 11:37:02 pm]

Re: srchub - free source code hosting by Celestialkey
[November 27, 2015, 08:51:42 am]

Updates by Nathan
[October 30, 2015, 08:27:36 pm]