[OpenSource Project] C++ CoCore

11/16/2010 02:22 ImmuneOne#1
Alright, I think I'm done with the lurking for now.. The main reason of me starting this project is to get some people to use C++ instead of C#. There are a few members who I believe have potential, and I think those are pretty much the ones who will take interests into this project.

What is this CoCore, and what does it contain?:
Unknown (?)

Yes.. Unknown. I think I want the members who are interested to provide me with a list of things that should be put in, for example, custom map(dictionary), Conquer's Cryptography, Co mapping methods(linear-searching/querying), Async Winsock wrapper, named pipe wrapper and so on..

For those who do not know any C++ and are willing to learn can contact me at any time. Oh right.. the 'C++' I'm talking about is unmanaged C++.

NOTIFICATION: [Only registered and activated users can see links. Click Here To Register...]. There is no work done yet if you're lucky I'll do some tonight but surely I'll start on the project this weekend.
11/16/2010 02:33 _tao4229_#2
Is it going to be entirely open-source? (hopefully)
Is it going to be intended for use as a server base?
Is it going to be used as a library for a C++ server (.lib or a .dll with headers)?
Is it going to be used as an unmanaged library with use intended for other languages (managed or not)?
11/16/2010 02:34 mateco000#3
Is it going to be fucked, shut up
11/16/2010 02:38 ImmuneOne#4
Quote:
Originally Posted by _tao4229_ View Post
Is it going to be entirely open-source? (hopefully) Yes.
Is it going to be intended for use as a server base? Yes.
Is it going to be used as a library for a C++ server (.lib or a .dll with headers)?
A library for a C++ server, most preferably a .lib
Is it going to be used as an unmanaged library with use intended for other languages (managed or not)? No, I think I would ruin the idea of finally getting people to use C++ then.
.
11/16/2010 02:43 _tao4229_#5
Great. I was hoping you weren't for the last one considering it'd ruin the idea of making wrappers when most people would have to make class wrappers around yours.

Are you going to be implementing a legit hashmap for the library? (Just curious, I'd like to see an implementation in C++).


Also...
Are you going to be using c functions (or the standard C++ classes/functions) or will you be using the win32 api?

Just curious if you intend to go 'cross-platform'
11/16/2010 02:50 ImmuneOne#6
Quote:
Originally Posted by _tao4229_ View Post
Great. I was hoping you weren't for the last one considering it'd ruin the idea of making wrappers when most people would have to make class wrappers around yours.

Are you going to be implementing a legit hashmap for the library? (Just curious, I'd like to see an implementation in C++). I could do that yes, I've done a nice dictionary wrapper though, I used C#'s IComparable's concept for a binary searching tree to solve the key comparising.

Also...
Are you going to be using c functions (or the standard C++ classes/functions) or will you be using the win32 api? Yes I'm definitely going for cross-platform. As Linux is a much, much cheaper way to host your server.

Just curious if you intend to go 'cross-platform'
.
11/16/2010 03:06 _tao4229_#7
Very cool. Ask if you need any help.

Also: comparising, lol.
11/16/2010 03:15 ImmuneOne#8
Quote:
Originally Posted by _tao4229_ View Post
Very cool. Ask if you need any help.

Also: comparising, lol.
Code:
template<typename T>
int IComparable<T>::CompareTo(IComparable<T> comparer)
{
	if (Key() > comparer.Key())
		return 1;//Comparising key greater then comparised key.
	else if (Key() < comparer.Key())
		return -1;//Comparised key greater then comparising key.
	else
		return 0;//Comparising/Comparised key equal to comparised/comparising key.
}
11/16/2010 03:44 _tao4229_#9
I've always done

Code:
return Key() - comparer.Key();
I guess I'm lazy. From what I've been taught it's zero for equal, greater than zero for greater, less than zero for less. Doesn't really matter though.
11/16/2010 07:01 Nullable#10
I hope this won't die over the next week or two.
You know where to find me if you ever need help. :)
11/16/2010 10:34 BioHazarxPaul#11
oh C++ intresting.. id like to see this im taking C++ in college right now and would be good to see a server in C++ and not C#
11/16/2010 12:54 Syst3m_W1z4rd#12
Quote:
Originally Posted by SilentKill View Post
oh C++ intresting.. id like to see this im taking C++ in college right now and would be good to see a server in C++ and not C#
Already done by Bone you
11/16/2010 16:43 ImmuneOne#13
Thanks to a great idea of Nullable the library will be structured like this;
Library::<version>::Cryptography/Networking/Collection/Guard

Cryptography: Which will have different encryption algorithms (Auth before Blowfish, Auth after Blowfish, GameEncryption, ConquerPasswordAlgorithm and RC5).

Networking: Which will have packets of any known/used version in the private server community, last patch included and Diffie Hellmann's Key Exchange aswell.

Collection: Which will have a custom hashmap(got the idea from tao), the style will be following C#'s Dictionary/List (Dictionary<TKey, TValue>, List<T>, HashTable(), HashSet<T>, SortedList<T>, Queue(), Stack()).

Guard: Functions compared to Monitor.Enter() and Monitor.Exit() and a custom lock using Mutex.

NOTIFICATION: SVN url added. I will start working on it if you're lucky tonight or surely this weekend.
11/16/2010 18:58 Basser#14
Wish I could join conversation.
11/16/2010 18:59 bone-you#15
I'm curious as to why you're not just making a whole server. For C# I could understand a library system as every server is in C# and many have similar problems... but there are none in C++ which means someone would still have to create a C++ server to make use of a core library. I think a full either modular or highly configurable C++ server (whether open source or not) would be far more useful to this community. Sure, your current idea could prove more useful to a dev, but that explains itself.