Jump to content

So, what is your current project(s)


sees_all1

Recommended Posts

  • 2 months later...
  • Replies 169
  • Created
  • Last Reply

Top Posters In This Topic

Serializing results from a test data generator for JavaScript functions into XML. Hooray for final year dissertations! Along side this I've got to make a WP7 app for a car club and that consumes a JSON service and some distributed system for a point of sale.

S_I_G.jpg

Those with a little bit of knowledge are more dangerous than those with none.

Link to comment
Share on other sites

  • 5 months later...

Not quite a necro since it's still on the first page...

 

Finally got around to learning VBA, so I wrote a UDF for Formulae-VB.png

The 2 functions convert from latitude and longitude to UTM coordinates and vice versa.

It was a pain in the ass doing it in Excel especially for converting large numbers of coordinates. It takes just a few different cells, haha. Was nifty seeing it all in 1 cell. And it's highly accurate as I ran it against the the Corps of Engineers' calculator. Did 115,000 iterations and only 3% of the results differed by a millimeter; the rest were exact.

 

I brought it into Visual Basic (inb4 lol), which was cool for all the error handling, but I haven't quite figured out how to run the conversions on a .txt which makes it useless for batch converting. I can import and export easily enough, just haven't got around to messing with delimited values.

Working on max and completionist capes.

2435/2475

Link to comment
Share on other sites

  • 2 months later...

I usually do several projects however my most popular one atm has to be my Unix/Linux port of the official runescape client in perl :P

However even though the original aim was a linux port of the client, it does run on Mac(the settings editor needs wxperl to be downloaded as apples built in version have been bugged since 10.6 snow leopard) and Windows(although needs to download a zipped portable perl version to work) too ^^

 

https://github.com/HikariKnight/rsu-client

 

some pics of the project :P

 

Settings editor

Ldtg.pngLdto.png

 

Ldtu.png

 

The client:

LduD.png

 

Start menu:

Ldvd.png

 

and ofcourse the updater:

Ldvq.png

Link to comment
Share on other sites

  • 1 month later...

Time to dig this thread from the grave.

 

I am working on three projects at any given time.

 

My current, main project is a game engine with a custom OpenGL/DirectX binding for Java. My current target OS is Windows, but I plan on opening up support for Linux and Mac with OpenGL only later on. I am using Jawt/JNI and C++ for the native portion. Each rendering type uses a simple initialization and destroy method for opening and closing the rendering pipeline.

 

Here is the initialization code for DirectX:

JNIEXPORT void JNICALL Java_net_davidcode_engine_rendering_d3d_D3D_grab(JNIEnv *env, jclass cls, jobject canvas){
pToolkit = new JawtToolkit(env, canvas);
HWND hWnd = pToolkit->getHWND();
if(hWnd == NULL)
ThrowJavaRuntimeException(env, "Could not get the handle for the canvas!");
d3d = Direct3DCreate9(D3D_SDK_VERSION);
D3DPRESENT_PARAMETERS d3dpp;
ZeroMemory(&d3dpp, sizeof(d3dpp));
d3dpp.Windowed = true;
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
d3dpp.hDeviceWindow = hWnd;
d3d->CreateDevice(
D3DADAPTER_DEFAULT,
D3DDEVTYPE_HAL,
hWnd,
D3DCREATE_SOFTWARE_VERTEXPROCESSING,
&d3dpp,
&d3ddev);
cout << "DaveDX Verson " << LIB_VERSION << " initiated!" << endl;
}

 

and here is the OpenGL version:

JNIEXPORT void JNICALL Java_net_davidcode_engine_rendering_gl_GL_grab (JNIEnv *env, jclass cls, jobject canvas){
pToolkit = new JawtToolkit(env, canvas);
HWND hWnd = pToolkit->getHWND();
HDC hDC = GetDC(hWnd);
if(hWnd == NULL)
ThrowJavaRuntimeException(env, "Could not get the handle for the canvas!");
PIXELFORMATDESCRIPTOR pfd;
int iFormat;
ZeroMemory(&pfd, sizeof(pfd));
pfd.nSize = sizeof(pfd);
pfd.nVersion = 1;
pfd.dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | PFD_DOUBLEBUFFER;
pfd.iPixelType = PFD_TYPE_RGBA;
pfd.cColorBits = 24;
pfd.cDepthBits = 16;
pfd.iLayerType = PFD_MAIN_PLANE;
iFormat = ChoosePixelFormat(hDC, &pfd);
SetPixelFormat(hDC, iFormat, &pfd);
hRC = wglCreateContext(hDC);
wglMakeCurrent(hDC, hRC);
cout << "Initializing DaveGL Version:" << LIB_VERSION << endl;

}

 

The JawtToolkit is a custom class written to ease the process of opening the pipeline of OpenGL and D3D to the handle of the Canvas. After rendering is satisfactory, I will proceed into working on the Audio (Not sure on library yet) and Scripting (LUA) portions.

 

Secondary projects include a max cape calculator and voxel research.

wii_wheaton.png

[software Engineer] -

[Ability Bar Suggestion] - [Gaming Enthusiast]

Link to comment
Share on other sites

  • 4 weeks later...

^

Check out LWJGL for Open GL binding to Java. Always nice to use someone elses libraries whenever possible.

 

Thanks, but I am not a huge fan of LWJGL. It seems bulky for what it does. I like writing my own bindings for both a learning experience and personal usage. My binding runs just as fast and works with DirectX.

 

Here is an example of initializing the opengl pipeline, rendering a square, and closing the gl pipeline:

(This code formatter blows)

 

public void init(){
canvas = new Canvas();
canvas.setSize(640, 480);
OpenGL gl = OpenGL.getInstance();
gl.bind(canvas);
add(canvas);
}
public void render(){
gl.clear();
gl.begin(OpenGL.QUADS);
gl.color3f(1, 0, 1);
gl.vertex2i(0, 0);
gl.vertex2i(32, 0);
gl.vertex2i(32, 32);
gl.vertex2i(0, 32);
gl.end();
}
public void destroy(){
gl.release(canvas);
}

 

Its really simple to deploy for use with an applet or standalone application. I am starting to phase out of Java and focus on more c++ usage as I do not like the way Java is heading. I want to play around with graphics and build a mini-WoW type engine in the future.

wii_wheaton.png

[software Engineer] -

[Ability Bar Suggestion] - [Gaming Enthusiast]

Link to comment
Share on other sites

I've been looking into using OpenGL recently (my friend and I want to attempt to make a game, we probably won't succeed but it'll be fun to try). Unfortunately, I'm having a lot of trouble getting the code to compile. I've followed like 8 different tutorials to the letter and used a number of compilers, but I can't seem to get it to set up correctly. Hopefully I'll get it figured out, because that stuff looks pretty cool.

Link to comment
Share on other sites

I've been looking into using OpenGL recently (my friend and I want to attempt to make a game, we probably won't succeed but it'll be fun to try). Unfortunately, I'm having a lot of trouble getting the code to compile. I've followed like 8 different tutorials to the letter and used a number of compilers, but I can't seem to get it to set up correctly. Hopefully I'll get it figured out, because that stuff looks pretty cool.

 

Thomas Edison once said "If I find 10,000 ways something won't work, I haven't failed. I am not discouraged, because every wrong attempt discarded is another step forward." That is something which relates to coding in today's time. If you are using the OpenGL llibrary which is included in to most compilers, then make sure you are linking the OpenGL32 library. With LWJGL, you have to make sure the libraries and native libs are in the path. You can see this page or one of the others within the wiki for setting up LWJGL with eclipse or just checking which libraries are needed for minimal usage.

wii_wheaton.png

[software Engineer] -

[Ability Bar Suggestion] - [Gaming Enthusiast]

Link to comment
Share on other sites

I'm still developing a game framework for use in personal projects. Targets include the Wii (homebrew, of course!) and modern graphics cards (think OpenGL 3 or so). I'm trying to determine how to handle a fixed function pipeline and a programmable pipeline in one framework. This is important for such features as alpha testing, which is implemented in the shader on progammable hardware, but as a fixed function operation on other targets (e.g., Wii)...

 

Currently it's only running on Windows. I do have a working pooled memory allocator though, which will alleviate much of the problems on the Wii hardware, such as the subpar amount of RAM, etc. Of course it's not used in the Windows build...

 

There's not much to look at right now:

 

l6t3T.png

ozXHe7P.png

Link to comment
Share on other sites

You guys have been working on some pretty awesome projects(those graphics look awesome =] are they your own?). I'm still mainly just messing around with whatever I feel like at the time.

 

-Started reversing League of Legends(as it has become my main game), not much functionality at the moment aside from chat and some random engine functions.

-Finally written a first revision; simple intuitive interface for network sockets, similar to that of C#'s TCPClient but much better imo(proper connection status and input/output handling).

-After learning to program in C# I have to say that I do like it, purely because it's so easy to create GUI's and functional programs.

-Recently bought a USB wireless receiver for xbox 360 controllers, so I programmed a basic wrapper for the XInput library. Friend of mine joked about doing some kz in 1.6 with a controller so I programmed a quick hack for cs 1.6 that enabled controller support... no wonder cs wasn't a big hit on the original xbox! :P

-Various other wrappers and utilities (BSP map file reader, disable windows key, basic CPython wrapper, detour functions)

 

After I refactor the net code(address resolution mainly) i'll be using that for numerous projects:

-DNS proxy server

-Proxy/Mitm

-League of Legends client

 

As always adding new utilities and wrappers to my C++ library, I'm thinking of writing an object framework similar to managed languages to see where that goes.

 

Will be interesting to see what the new modules this semester will be like, was doing C and ARM last semester which was basic. I have a functional programming module which will be the only new stuff for me really, aswell as some "advanced" SQL syntax from the database module that I won't have touched yet. Oh and AI should be interesting.

 

Snadar (metal gear solid <3)

Link to comment
Share on other sites

  • 3 weeks later...

my current project atm is a launcher for the unix/universal port of the runescape downloadable client, with support for "addons" which are basically small applications that are loaded through a moduleloader what the user can run whenever they need them.

 

currently the addon functionality is in development but it is almost finished and contains 2 demonstration addons, one which is a player lookup addon which lets the user quickly lookup information about a player.

 

PS: before someone asks why it is called "runescape unix client launcher" when it works on windows, it is because the main purpose is unix based systems, but it works on windows too due to requests from my friends, and i just prefer that my scripts and programs work across most platforms :P

 

screenshots in linux:

TQnincm.png

rZDwsEr.png

63a79FG.png

 

screenshots from windows:

2JhUdlm.png

MWbNdxv.png

q6sOJEM.png

 

The launcher and client works on mac too but i do not have any mac pcs around me atm take screenshots from :P

Link to comment
Share on other sites

  • 3 weeks later...

Current project is a new website for the radio station I work for FromeFM 96.6.

The new www.frome.fm site will replace the old www.fromefm.co.uk with new branding (the current site just plonks the new logo in the old site). You will be able to listen to and download the back catlogue of archived shows as well as listening live using a html5 based player instead of flash which means it'll work on mobile phones and tablets too.

 

The new site is built using wordpress with a responsive theme which resizes things depending on the screensize which means no separate design for mobiles compared to desktop.

Plugins include:

  • Custom self written ones to pull in the archived shows into a html5 player. This one requires a complex array of scripts to run in order such as Dircaster to read the contents of a particular folder, magpie or simplepie to convert that listing into rss and then parsing it to php readable code into the relevant show page (see recent threads on the subject)
  • Post Tags and Categories for Pages - Does what it says on the tin
  • Custom sidebars - to allow me to create more than one type of right side bar for different pages
  • Display posts shortcode - to allow me to use shortcodes to create dynamic lists of pages in a specific category
  • Shortcodes in Sidebar Widgets - lets me use the code from the above plugin within text widgets in sidebars
  • Media replace - Lets me upload new versions of images rather than it being created under a separate filepath
  • And a bunch of other simple ones to exclude certain pages from search and social network widgets, cookie law banner and announcement bar

I've used the categories for pages plugin to make the site easier to manage as it not only allows me to use shortcodes to generate page listings but also helps administer the site by filtering in the pages admin panel.

 

Can't show you the site in development as it's protected with a password but hope to provide some screenshots soon. :)

612d9da508.png

Mercifull.png

Mercifull <3 Suzi

"We don't want players to be able to buy their way to success in RuneScape. If we let players start doing this, it devalues RuneScape for others. We feel your status in real-life shouldn't affect your ability to be successful in RuneScape" Jagex 01/04/01 - 02/03/12

Link to comment
Share on other sites

Current project in VBA:

 

Write a script that let's user input multiple file locations from the server (Word, Excel, PDF).

Open those files from within VBA, give output to PDF-files

From one of the documents, remove the last page

Stitch the PDF's together as needed, save with the appropriate name

Delete all temp files afterwards.

 

Typically it's 1 excel-file, 2 word files, and 3 PDF's for which we need the location (though from the excel-file i need 5 different sheets).

 

We used to just make a hardcopy - which got copied and sent out to contractors. To avoid scanning 300+ pages and having huge filesizes, this method allows us to easily create the PDF-files with limited filesize. Doing it all in Excel, with just selecting files and pushing a 'go' button lets even the less-computer-adept employees do the job easily.

Vmser.png
Link to comment
Share on other sites

  • 1 month later...

New http://frome.fm/ FromeFM website now live :)

 

ysYsa9C.png

612d9da508.png

Mercifull.png

Mercifull <3 Suzi

"We don't want players to be able to buy their way to success in RuneScape. If we let players start doing this, it devalues RuneScape for others. We feel your status in real-life shouldn't affect your ability to be successful in RuneScape" Jagex 01/04/01 - 02/03/12

Link to comment
Share on other sites

New http://frome.fm/ FromeFM website now live :)

 

ysYsa9C.png

 

+1 Nice simple, intuitive design. I dislike websites that are very much crowded.

 

--

 

My current project is a Runescape transaction management application (for flipping via the Grand Exchange).

 

http://forum.tip.it/topic/318624-updated-grand-exchange-transaction-app-would-you-use/

Have an Android phone? Check out my Runescape apps:

https://play.google.com/store/apps/developer?id=SAA

 

 

Follow my app development Twitter here.

Link to comment
Share on other sites

  • 4 weeks later...

Perhaps a thread where we post snippets of code that others may find useful / interesting?

 

I was interested in making a command line tool to pipe data through to AES encrypt/decrypt. Originally wanted to implement it in Haskell but I'm still unable to comprehend that language. Ended up writing it in python. Wanted to use it on windows but python says no at the moment.

 

Using PyCrypto: https://www.dlitz.ne...tware/pycrypto/

 

aes256.py

import sys
import struct
from Crypto import Random
from Crypto.Hash import SHA256
from Crypto.Cipher import AES
random_generator_file = Random.new()
# format
# -----header------
# iv	 <- 16bytes
# chunksize <- <Q
# -----------------
# ------chunk------
# size	 <- <Q
# data <- chunksize
# -----------------
def encrypt(key, infile, outfile, chunksize=1024):
iv = random_generator_file.read(16)
encryptor = AES.new(key, AES.MODE_CBC, iv)
outfile.write(iv)
outfile.write(struct.pack('<Q', chunksize))

while True:
 chunk = infile.read(chunksize)
 outfile.write(struct.pack('<Q', len(chunk)))
 if len(chunk) == 0:
	 break
 elif len(chunk) % chunksize != 0:
	 chunk += 'M' * (chunksize - len(chunk) % chunksize)
 outfile.write(encryptor.encrypt(chunk))
def decrypt(key, infile, outfile):
iv = infile.read(16)
decryptor = AES.new(key, AES.MODE_CBC, iv)
chunksize = struct.unpack('<Q', infile.read(struct.calcsize('Q')))[0]

while True:
 size = struct.unpack('<Q', infile.read(struct.calcsize('Q')))[0]
 if size == 0:
	 break
 chunk = infile.read(chunksize)
 outfile.write(decryptor.decrypt(chunk)[:size])
mode = sys.argv[2]
hashkey = SHA256.new()
hashkey.update(sys.argv[1])
key = hashkey.digest()
if mode == "encrypt":
encrypt(key, sys.stdin, sys.stdout)
elif mode == "decrypt":
decrypt(key, sys.stdin, sys.stdout)

 

vdfYzKc.png

 

Edit: don't you think text url shorten'ers are really annoying, eg when you're browsing raw text caches and you can't follow the link because it's been shortened with '...'

Link to comment
Share on other sites

A progression to my previous post, although no code to show at the moment.

 

I've implemented an RSA encrypted exchange of AES256 keys which are used to encrypt communication.

That is:

  1. generate/load RSA keys for both clients A and B
     
  2. A and B exchange public keys
     
  3. generate AES keys and IV's for both clients A and B
     
  4. A and B exchange AES keys and IV's via RSA encryption
     
  5. A and B can then exchange AES encrypted data

Specifically, I've implemented communication over sockets, but it uses file style io.

 

Need to recode the RSA part, and then work out how to properly interface it.

 

Here you can see 2 threads fighting to debug into stdout.

0nvrP03.png

 

Edit: forgot to mention the strange sense of satisfaction waiting a minute for the program to generate 2 RSA keys.

Link to comment
Share on other sites

  • 3 months later...

uyXQyCD.png

 

I guess this continues from above.

 

This is a single threaded tick based multiplexed/non-blocking io server. Messages go through a chain of protocols, each protocol functions independently but can be chained together.

python dictionary -> JSON encoded -> AES encryption -> internet -> AES decryption -> JSON decoded -> python dictionary

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.