Er... interesting. I do advise against charging for it, though...
Here's a simple chat program I zapped up one weekend (for DBpro)...
Or click the download button for the exe.
Enter a username,
click yes/unblock to any popups that appear
Choose "OK" to search and create your host / join someone else's session
On advanced gui mode, you type comments into the white box at the bottom, for not-advanced (better on really old PCs), you click shift to type and then enter to end the message.
rem RayChat
loadingstr$ = "[RayChat Version 2.1.0.0 - by Xolatron]"
`user32num as byte
`user32num = 1
`load dll "user32.dll",user32num
set text font "Courier New"
set text size 16
ink rgb(0,0,128),rgb(192,192,192)
cls rgb(192,192,192)
Print loadingstr$
input "User=",user$
input "Adv.GUI?(y/n)=",tempstr$
global advgui as boolean
if lower$(mid$(tempstr$,1))="y"
advgui = 1
else
advgui = 0
endif
cls
Print "[Processing Login]"
cls
if advgui
startblue "USERNAME","KEY"
global textbox
global inputbox
global font
textbox = createRichEdit(0,0,640,460,0)
inputbox = createEdit(0,460,640,20,0,0)
font = createFont("Courier New",10,0,0,0)
applyfont textbox,font
setGadgetColor textbox,rgb(192,192,192),rgb(0,0,128)
setReadOnly textbox,1
setWordWrapMode textbox,0
`createhotkey 1,0,0,0,13
endif
if advgui
setGadgetText textbox,loadingstr$
else
Print loadingstr$
endif
mPrint("[RayChat Loading]")
rem Start net game
mPrint("[Press OK when message appears]")
PlayerNumber=default net game("RayChat5629",user$,16,1)
if net game exists()=1
activateGadget inputbox
mPrint("[RayChat Loaded]")
mPrint("[Shift: Begin message]")
mPrint("[Enter: Send message]")
mPrint("[========================]")
mPrint("")
send net message string 0,"["+user$+" Joined]"
mPrint("["+user$+" Joined]")
rem Main loop
do
if advgui then getevent
rem Draw Backdrop and handle player blob
`if shiftkey()
` input user$+">>",tempstr$
` if tempstr$<>"" then send net message string 0,user$+": "+tempstr$
` mPrint(user$+">>"+tempstr$)
`endif
if advgui
if eventtype()=KEYUP and eventData()=13 `and eventSource()=inputbox
tempstr$ = getGadgetText(inputbox)
setGadgetText inputbox,""
if tempstr$<>""
send net message string 0,user$+space$(8-len(user$))+": "+tempstr$
mPrint(user$+space$(8-len(user$))+">>"+tempstr$)
endif
endif
else
if shiftkey()
Print "";
input user$+space$(8-len(user$))+">>",tempstr$
if tempstr$<>" " then send net message string 0,user$+space$(8-len(user$))+": "+tempstr$
endif
if controlkey() then cls
endif
rem Draw Others
get net message
while net message exists()=1
tempstr$=net message string$()
mPrint(tempstr$)
get net message
endwhile
rem Update and/or Quit key
if escapekey()=1 then exit
loop
rem End net game
free net game
else
Print "ERROR: Failed to Create Net Session"
suspend for key
end
endif
end
function mPrint(text$)
if advgui
`tempstr$ as string
`tempstr$ = getGadgetText(textbox)
`setGadgetText textbox,tempstr$+chr$(13)+chr$(10)+text$
setSelStart textbox,2147483647
setSelLen textbox,0
setSelText textbox,chr$(13)+chr$(10)+text$
else
Print text$
endif
endfunction
Basically, my point is charge for something only if it is really good / up with the best. Mine's free (not that I'd distribute it under normal circumstances... and I'm not sure if it works outside of LANs), and even MSN is free. Until then, keep stuff free
.