This is a thread regarding my plans for software I'm going to develop for Gaia. The following items are defined arbitrarily, as in, in no specific or otherwise systematic order. Look forward to seeing these things this upcoming year. I'm hopeful that I'll be able to get a fair portion of these ideas up and running over that time span.
All of these will ideally be cross platform and managed under version control. Most likely Git/SVN (both concurrently, or one or the other). But at the moment my choice for a VCS is indefinite.
They will be released independently of LG, but accessible by it all the same. In other words, my target audience is not LG in particular. Rather the Gaia community as a whole. Of course everything will be free software.
Now without further ado here's a general rundown on some aspects of these programs:
Firewall
Somewhere down the road, I plan on developing an application that acts as a firewall between the end user (you) and Gaia. In theory, this should eliminate things like Gaia related phishing and scams of the like. You will be essentially "unhackable."
And now for the nitty gritty (in other words, technical details): In order to accomplish this I'm going to need to create a middleman (so to speak) across outgoing traffic (typically web requests as it probably won't cover the TCP layer). The firewall then systematically determines whether the data you receive is safe or malicious and then acts on it accordingly.
This is usually accomplished through creating a proxy server on the localhost to intercept incoming HTTP traffic and modifying it in order to emulate the target behavior of the application. I originally planned on crudely integrating support for the standard hosts file for on-the-fly web page filtering, but it seems like for platforms like Windows that won't really be feasible. So for the sake of forward compatibility across operating systems, it won't take this approach. Instead, it will exercise the same behavior using the aforementioned mechanism described above - a proxy server.
General Purpose Framework
This is an idea I've had for quite some time. I plan on creating a framework for Gaia that's basically a set of tools/utilities/applications/libraries that will facilitate general methods and mechanisms to accomplish end goals on Gaia. This will include but isn't limited to: logging in to Gaia, program disabling system, authentication schemes, and so on.
My original choice for a development platform was Delphi/Object Pascal, but that's a native Windows programming language. As such, if need be I will transition languages to accommodate this. Ideally this will be a fairly large project, but at the moment I do not have a specific development team recruited. I do however have a few people in mind. Version control will also help contribution and collaboration for people outside of that scope.
That's all I will cover for this idea for now.
Macro/Scripting/Glue Language
The idea here is to create something like an ad-hoc scripting language for Gaia. This means that its niche is exclusively for Gaia programs.
It will ideally provide things like basic macro creation for Gaia (this includes standard HTTP interfacing, mouse/keyboard manipulation, and more).
I will either create it from scratch (bleh), or from an existing scripting language like Lua on top of a host application to provide the base libraries to interface with.
Miscellaneous Bots
Self-explanatory. This is what I have on the table at the moment for this idea: Slot bot, Jigsaw bot, Market tools, and whatever else is high on demand. Oh, and a fishing bot, too.
I had the base UI for it setup and all, and a friend of mine had the QADCA encryption/decryption ported for Fishing, but I never actually got around to finishing it.
I'm probably just going to write the entire thing from scratch now since I haven't worked on it for quite a while, but here's an old screenshot for anyone interested:
I'm at a shortage of ideas concerning this. So if you have any other suggestions, feel free to fire away.
(Maybe) Clients
Self-explanatory. I might provide a few clients for Gaia Online games if I'm motivated enough. Don't get your hopes up too high on this one, very slim chance I'll actually do this.
Towns 2.0 Bot
I'm going to create a TCP client for Gaia Towns 2.0 in Lua that supports dynamic extensions to the program/functionality (essentially plugins). This is mainly just for fun. I plan to release it under Git.
Had one written for old Towns a while back, never finished that either lol. Here's a screenshot:
Written in Delphi.
[Unethical] Malware
Although this is unethical and usually out of my nature, I plan on experimenting with Gaia specific malware at some point. It'll basically be custom malware/virii created for Gaia specifically.
This includes: spyware, keyloggers, RATs, botnet (if I ever did this it more than most likely would never go public), etc.
I'd like to specifically address something I might showcase relatively soon - a Gaia "worm." A worm by definition is a self-replicating program that either does something malevolent, or exists for the sole purpose of propagation. I plan on creating a program that utilizes a certain hole in Gaia to collect information from a designated user(s). The program will stealthily reside on the host computer and wait for Gaia Online sign-ins. It then proceeds to collect the previously mentioned information, logs in their account, spreads the worm to all friends via PMs, profile/comments, and status. In turn, it then bans the user.
That's about all the inner-workings I can disclose about this for confidentiality concerns.
Likewise, if you have any ideas to contribute in regard to this (for malware in general) feel free to post them.
FLP/FMP/FLW/Fake Survey/Phisher/Logger Creator
I'm going to try to create a tool that helps users create general phishing programs for Gaia. I won't go too much in detail, but I'm sure most of you already have an idea how that would work.
---
I realize a lot of this seems unnecessary and redundant considering the whole Gaia "botting" ecosystem is dying out, but maybe these things will help aid in its revival.
Later on I plan on creating a web page on my domain to consolidate these ideas into a centralized hub to better be viewed globally. It'll also probably be more comprehensive than this was (I know, a living nightmare that'd be). I'm going to update this roadmap as ideas come.
I'm open to further ideas, but note that my primary aim is innovative as opposed to cliché/stereotypical Gaia programs. So if you don't have anything "original" to suggest, then don't bother offering suggestions.
Comments, questions or concerns are welcome. Feedback is also appreciated.
P.S. I'm not looking for funding for this project (the big picture or the project as a whole is the Development Roadmap in itself). But when I get it off the ground, I would be highly grateful of funds as I'm sure it will help the development process in the long run. The software will again be distributed free as in freedom, and free as in free beer.
Results 1 to 17 of 17
- 21 Aug. 2012 09:49pm #1
[Montage] Gaia Development Roadmap
Last edited by The Unintelligible; 22 Aug. 2012 at 05:46am.
- 21 Aug. 2012 10:30pm #2
I'm secretly in, some of those i've already started. BUT, I lost all the projects >,>.
Though I really like the idea, and i'll help , will help me with my other languages.
- 21 Aug. 2012 10:34pm #3
Which ones did you start on?
And I'd like to point out that this isn't really going to be a project actively worked on, they're just projects I'm going to do over this upcoming year (probably a couple months from now, then from that point on).
Most likely nothing will be built using .NET languages. The tools I plan on using vary between: Delphi, AutoIt, Lua, C/C++ (GTK+ for C, Qt for C++), and Python.
It probably won't require them all. But those are what I have in mind.Last edited by The Unintelligible; 21 Aug. 2012 at 11:25pm.
- 21 Aug. 2012 11:10pm #4
Original post updated (sort of).
Moreover, if anyone has any ideas or suggestions for programs feel free to post them here.
- 22 Aug. 2012 05:17am #5
I only read the first suggestion, but lol. In order to be more secure, we're going to send all of our traffic through a third party? Who regulates the regulator?
- 22 Aug. 2012 05:33am #6
I know, it's tl;dr. This is just a compilation of ideas I've had over the years.
But yes, a third party that's completely reliable. It's probably a bad idea, but the main concept is to filter any websites pertaining to Gaia that are deemed malicious. That and to perform a couple other key functions.
You have a fair point. The best defense mechanism is common sense. But the project will be open source and 100% safe. Perhaps this would be better off a personal project rather than something used at large. I'm not sure right now.
Do you have any other opinions to share? I appreciate feedback like this.
Edit: If you're thinking the same thing I am, this whole thing does seems pretty ridiculous. Just thought this would be the most appropriate place to bookmark my ideas.Last edited by The Unintelligible; 22 Aug. 2012 at 05:50am.
- 22 Aug. 2012 08:12am #7
Well there's no way I'd trust my web traffic to go through a random 3rd party (who I hold no control over/ability to see what they're doing). I suppose I can give feedback:
General Purpose Framework - this is something me and Matt were building at one point (though to be fair, Matt is the only one who touched the code). The idea was to create a general purpose framework (i.e. not related to Gaia Online), and have certain libraries (i.e. there could be a Gaia library) that people could access and release their own plugins. I was hoping to have the entire framework run off version control (preferably Git), and maybe use a service like Github. We never got that far though. You can see Matt's progress here: https://github.com/logicalgamers/framework
Macro/Scripting/Glue Language - eh. Seems like a lot of work for little gain. You'd be better off imo doing something like the general purpose framework and just walking people through it (plus if you had a decent library for Gaia, it'd be dead easy for people to use).
Unethical programs - to each is own. To be honest, I didn't read these, because I don't personally care for this sort of activity.
Gaia Online is boring. The only thing I'd personally be interested in at this point is if I were to do something difficult (comparatively) as a group. i.e. have a github project for something like a smart zomg bot, and just work through it incrementally.
- 22 Aug. 2012 01:01pm #8
Hm, yeah. I'll probably just advise the users to compile from source or something. I'll think about that. But more control to the user is definitely something I have in store (provided I go through with this project).
I've seen this before. The idea never really clicked to me. My goal was to have the users interact with the framework - not the other way around (that being requiring them to directly use the framework instead of their preferred language, which is the case here).
If you could explain this more in detail, that would be great. The big picture is still a little fuzzy. How would this work? I see a GUI. From there it should load your plugins? Add that functionality on top of the GUI? Doesn't really seem too feasible to me.
Oh and wxPython over Qt seems like a bad idea (in the TODO it mentioned superseding the use of PyQt in favor of the former). While wxPython is a probably a better candidate for UIs, as you probably already know Qt provides more than just support for GUIs. It provides robust libraries as well (e.g. QtNetwork, QtXML, etc). So if you don't want to use native Python libraries, then Qt is definitely the best option.
Here's the scheme to the one I had in mind: create a suite of components and utilities (e.g. DLLs and command-line applications) that provide the functionality for certain tasks (e.g. logging into Gaia, GSI interaction, and so on) and allow the user to interact with these things. From viewing the framework you linked me to, I derived the idea of extensibility from it since I never intended on allowing the framework to be directly built on. If I establish a plugin system beforehand, I could simply re-use that same methodolgy in a project like this. So yeah, support for plugins via Lua will probably be something for me to consider for the framework.
That's true. This was meant to be something more like a lightweight alternative for non-programmers (or anyone wanting a quick solution) for relatively simple Gaia tasks. Ideally, it would remove the need to use an actual programming language to create bots for the annual Gaia events or things of that nature.
I may or may not actually do this. But if I do, I may just create it in conjunction with the framework (i.e. instead of creating the base libraries from scratch, just use libraries already supplied by the framework which should lessen the workload).
Yeah, I'm doing this pretty much out of sheer curiosity and nostalgia (and by that I mean the ages when Gaia was pretty much infinitesimally insecure/in utter chaos).
I'm wondering if I'd be able to cause another era like that. Probably not. But probably worth a shot as well. On second thoughts, I might just drop this entire idea.
Agreed. Although a zOMG bot doesn't really interest me, mainly because it'd be an extremely tedious thing to do.
But yeah. Thanks for the feedback.Last edited by The Unintelligible; 22 Aug. 2012 at 01:54pm.
- 22 Aug. 2012 03:38pm #9
- Age
- 12
- Join Date
- Jun. 2012
- Location
- In the snow
- Posts
- 2,077
- Reputation
- 71
- LCash
- 437.00
- Awards
Me being someone who doesn't know very much about programming and after reading the whole first post the part that interested me the most are the flps and fmp.
Thanks for starting to do something more with Gaia!
- 22 Aug. 2012 04:05pm #10
- Join Date
- Apr. 2010
- Location
- When freedom is outlawed only outlaws will be free
- Posts
- 5,113
- Reputation
- 195
- LCash
- 1033.00
Sending your traffic through a third party, what would that accomplish? o-o
I can try to help with anything written in C++, I know about 50% of the language currently. I don't know very many advanced programming tactics, but I help program robots and other things at my school so I have a fair amount of knowledge.
If you need anything else, just give me some pointers and I can probably learn pretty quickly and then help you with it.
And hey, I'd be happy to get a lesson while helping out with the project.
- 22 Aug. 2012 06:59pm #11
No problem.
Is there anything else in particular that you'd like to see? Program-wise of course.
The third party is actually a proxy server. All traffic is routed to that proxy server once you direct your LAN to the loopback address. Once that's done, you're able to intercept and modify the traffic in order to accomplish site filtering.
And to be blunt, that 50% is probably actually ~25% realistically considering this is C++ (granted, it isn't really too difficult once you have a fair grasp on programming).
Explain pointers to me. What are they? Why and how are they used? What does low-level programming mean to you? Why does C++ require explicit memory management? What is STL? What is Boost? Is C++ object oriented? Explain some C++ OO constructs to me.
If you're able to answer these things without assistance (i.e. Google), then you probably know 50%. Otherwise you're still just dabbling with the syntax, aka the basics.
To be honest, C++ is probably going to be my last resort (i.e. if I can't accomplish what needs to be done in the other languages I mentioned). So out of all listed programming languages, C++ is the one less likely to be used.
But yeah, I might keep you in mind. Thanks for offering.Last edited by The Unintelligible; 22 Aug. 2012 at 07:30pm.
- 22 Aug. 2012 08:56pm #12
- Join Date
- Apr. 2010
- Location
- When freedom is outlawed only outlaws will be free
- Posts
- 5,113
- Reputation
- 195
- LCash
- 1251.00
Well, I know a tiny bit of that, but not most. It's true, I need to learn more of it. Thank you for inspiring me to get back into programming again though, I've been doing web design lately because of lack of inspiring stuff in programming. I just have no idea what to program, and no idea how to do any of the bot stuff that you're doing If you could make some little private video about how you made the bots and how they work and stuff and release it in the Underground, I would love you forever. I know it's like asking to be spoon-fed how to make bots, but it would just help out any beginner bot makers a ton.
- 22 Aug. 2012 10:01pm #13
Sure, I can throw together a few tutorials on this kind of stuff. Any other tutorials that you'd like to see in specific?
They probably won't be private, though. I'll probably just post them on my blog.
Edit: As for things to program, just try creating anything that comes to mind. And don't forget to reinvent the wheel early and often - it's how a lot of people learn. In other words, even if things are already created, try creating it again for the heck of it. Sometimes even try to top it. If you can't think of anything to create then for the time being study meticulously. Take in every iota of information you can.Last edited by The Unintelligible; 23 Aug. 2012 at 12:50am.
- 22 Aug. 2012 10:08pm #14
- Join Date
- Apr. 2010
- Location
- When freedom is outlawed only outlaws will be free
- Posts
- 5,113
- Reputation
- 195
- LCash
- 473.00
- 22 Aug. 2012 10:14pm #15
- 22 Aug. 2012 10:49pm #16
I think that 25% is more like <5%, lol.
There's no way you know 25% of the entire language.
- 22 Aug. 2012 10:51pm #17