pR0Ps

Tester
  • Content count

    32
  • Joined

  • Last visited

Posts posted by pR0Ps


  1. Thanks! I actually just fixed a bug involving Flexhub today :P

    Update: Alpha 8

    Changelog:

    
    
    -------------------------------------------------------------------------------
    
    NetChatLink Alpha 8 - Minor fixes
    
    -------------------------------------------------------------------------------
    
    Fix: Client tag now properly formatted (in NMDC and ADC)
    
    Fix: NMDC $Lock/$Key handshake fixed (Thanks Light-Angel)
    
    


  2. Update: Alpha 7

    Changelog:

    
    
    -------------------------------------------------------------------------------
    
    NetChatLink Alpha 7 - Bugfixes
    
    -------------------------------------------------------------------------------
    
    Fix: Debug log getting too long and using up a ton of memory
    
    Fix: Changed strings to WideStrings
    
    Fix: No more duplicated messages from NickServ and ChanServ
    
    Fix: Action messages being sent twice from IRC
    
    Fix: Bot discarding nick for a SID if an INF was sent that didn't include the nick
    
    Fix: Special characters (|, $, etc) being transmitted to NMDC hubs
    
    Fix: Ignored auto-check for updates option (always checked)
    
    Fix: Some characters (like ê and ç) not being transmitted from IRC
    
    Fix: Inconsistent capitilization
    
    Added: Ability to relay parts from users (not joins yet)
    
    Change: Debug log now automatically writes to file and clears in-program log
    
    Change: Disabled automatically checking for updates on startup (until it works properly in the background)
    
    


  3. Sometimes I want to disconnect from a hub, but would like to keep the tab open so when I want to connect again, I have easy access to to it.

    Currently the options are: Clear, Add to Favorites, Reconnect, Copy, User Commands, and Close.

    What about adding a "Disconnect" item above "Reconnect" that would just terminate the connection to the hub and leave the tab open? ApexDC should also not try to automatically reconnect until the user manually specifies.


  4. Go with a any decent router that supports DD-WRT (http://dd-wrt.com/site/support/router-database). DD-WRT is basically a firmware replacement that gives you a ton more features with a clean GUI. I use a Rosewill RNX-GX4 (basically just a rebranded Netcore NW618) with DD-WRT and would recommend it to anyone, it's been running perfectly for the past year. Also, it's actually on sale right now at Newegg for $30, if Newegg will ship to wherever you're at.


  5. I think if you ditched the data transfers and made it just chat-only, Apple wouldn't have a problem with it. It would basically be just an IRC client. IMO downloads and uploads with a smartphone aren't really something that most people will need anyway.


  6. Last update I changed the save format from multiple ini files to a single XML file and added the option to send custom commands when connecting to IRC servers (for identifying with NickServ or anything else, every server is different). I also (because of the frequent updates) added an update feature. It checks at startup (and whenever else you want) for a new version and if it finds one, opens the download link in your browser. I also put the finishing touches on PID generation to make each instance have a different CID.

    Full changelog:

    
    
    -------------------------------------------------------------------------------
    
    NetChatLink Alpha 6 - Feature additions
    
    -------------------------------------------------------------------------------
    
    Fix: Bug in channel parsing (trailing comma)
    
    Fix: Bot now recognizes when it is signed in on NMDC hubs that don't support 'LOGEDIN'
    
    Fix: Dynamic user list could be edited (no effect on backend data)
    
    Fix: Rare crash on userlist cleaning
    
    Fix: Tab order
    
    Added: Dynamic PID (generated on first run)
    
    Added: Ability to connect to enabled connections on startup
    
    Added: Ability to run custom commands on IRC connect
    
    Added: Help tooltips (hover over things to see them)
    
    Added: Main program window can now be resized, minimized, maximized, etc.
    
    Added: Update feature (click the 'Check for Updates' button)
    
    Added: Update check at startup (can be disabled via the XML file)
    
    Removed: Option for custom IRC description (is now consistant with DC)
    
    Change: Filtered words are now *d out instead of discarding the entire message
    
    Change: Data is now saved in a single XML file (old saves will automatically be converted until v1.0)
    
    Change: Project now advertizes itself when you send the '.about' command
    
    Change: Non-controllers can use the '.about' command.
    
    Change: Default share is now 10GB instead of 1GB (still user-configurable)
    
    Change: UnEscape efficiency boost
    
    Change: GUI tweaks (sizes/tab order)
    
    Change: Increased form display speed by moving code out of the constructor.
    
    
    -------------------------------------------------------------------------------
    
    NetChatLink Alpha 5 - Bugfixes and ADC Password support
    
    -------------------------------------------------------------------------------
    
    Fix: Widestring usernames now appear properly in user control panel
    
    Fix: Error on password field left blank in ADC
    
    Fix: Error when recieving a QUI command
    
    Added: Can now be registered in ADC hubs (password hashing works properly)
    
    
    
    -------------------------------------------------------------------------------
    
    NetChatLink Alpha 4 - A lot of changes, probably a few bugs
    
    -------------------------------------------------------------------------------
    
    Fix: Will no longer respond to hub-described bots in ADC (unless you override it)
    
    Fix: Now sends messages to chats that are connected, even if they aren't enabled
    
    Fix: Crash on uninitilized ADC SID array in certain cases
    
    Fix: Character encoding bugs
    
    Fix: Links command now shows all connected connections, not enabled ones
    
    Fix: Messages will no longer send from connections that are not fully connected
    
    Fix: Memory leak
    
    Fix: Connections can no longer have the same name (caused problems with ini parsing)
    
    Fix: Tab ordering and alt+character shortcuts
    
    Added: Extensible framework for storing user information
    
    Added: Save and clear options for debug log
    
    Added: Seperate queue and rate control for PMs and mainchat messages
    
    Added: Ability to ignore PMs and mainchat from users
    
    Added: GUI interface for managing users (User control panel)
    
    Added: Hub user quit detection (Remove from OPList/SID table)
    
    Added: Error messages for incomplete connection information
    
    Change: Connections are now sorted by name
    
    Change: ADC blocked, OPs and controlling users now based off name, not SID
    
    Change: Better layout when using links command
    
    Change: Made main GUI easier to use/understand (merged Add and Update together)
    
    Change: Ignoring users to blocking users
    
    Change: Hub now disconnects when updating it to apply settings
    
    
    -------------------------------------------------------------------------------
    
    NetChatLink Alpha 3 - IRC fixes
    
    -------------------------------------------------------------------------------
    
    Fix: NickServ IDENTIFY parameters corrected
    
    Fix: When post rate was 0 no messages would send.
    
    Fix: Joining multiple IRC channels with channel key(s) present
    
    Fix: Stripping channel keys out of channel text
    
    Added: All Chan/NickServ messages are sent to debug messages
    
    Added: More specific error messages
    
    Added: Flexible channel list parser
    
    
    
    -------------------------------------------------------------------------------
    
    NetChatLink Alpha 2 - Working out the ADC kinks and some new features
    
    -------------------------------------------------------------------------------
    
    Fix: ADC OP SIDs are loaded on connect
    
    Fix: Displaying the oplist of an ADC hub now outputs the nicks, not the SIDs
    
    Fix: ADC Multiline messages now sent properly when sending in one line chunks
    
    Added: Per-connection option to control minimum time between chat messages (anti-flood)
    
    Added: Multiline messages can now be sent one chat message per line
    
    Added: Status icon for disabled connection (will still change if manually connected to)
    
    
    
    -------------------------------------------------------------------------------
    
    NetChatLink Alpha 1 - Bugfixes, changes and feature additions from codebase
    
    -------------------------------------------------------------------------------
    
    Fix: Empty NMDC '$Support' command not supported by some hubsofts, changed to '$Support NoHello NoGetInfo'
    
    Fix: Sending a chat message while a connection wasn't fully logged in would cause problems. Chats are now locked until they're ready to recieve messages
    
    Fix: Escaped <-> Unescaped conversions (ADC <-> NMDC)
    
    Added: Hubs and IRC channels are now identified by name
    
    Added: IRC channel keys are now supported
    
    Added: Debug log
    
    Added: ADC compatibility
    
    Added: GUI improvements (Adding a new connection selects it, deleting a connection selects the next item)
    
    Added: More status icons (off or error/connecting/connected and logged in)
    
    Added: About tab
    
    Change: GUI size is now limited
    
    Change: Prefix is now completely up to the user (WYSIWYG, no extra characters)
    
    Change: Cleaner message display format (Used to be '<Bot> {Prefix}Nick: Msg', is now '<Bot> <PrefixNick> Msg')
    
    Change: Message is not broadcasted by default anymore in code (procedure must be called)
    
    Change: Disabled GUI items when they have no effect (for clarity)
    
    
    -------------------------------------------------------------------------------
    
    NetChatLink PreAlpha - Initial codebase
    
    -------------------------------------------------------------------------------
    
    


  7. This is a small project I'm currently working on, let me know what you think.

    It's basically a bot that connects to NMDC and ADC hubs, as well as IRC channels and relays chat messages between them.

    Download the Binaries, source code, and instructions at http://netchatlink.sourceforge.net

    Features:

    • Link the chat from multiple NMDC hubs, ADC hubs, and IRC channels together.
    • Control the bot with text commands sent via private messages.
    • Can automatically detect OPs and allow them to control the bot.
    • User control panel allows for easy adjustment of user permissions and settings.
    • Block messages with certain words, or sent from certain users.

    Screenshots:

    http://sourceforge.n...e.php?id=305531

    http://sourceforge.n...e.php?id=305533

    http://sourceforge.n...e.php?id=305529

    http://sourceforge.n...e.php?id=305527

    Have a bug report or feature request? Let me know.


  8. How would you specify that URL pR0Ps? It needs to be easy for your users to set the config file and let Apex to the rest. The new installer already has the ability to download from a URL, so what about if you get user's to paste the config file or URL into the installer when it asks?

    I would give an option to specify the URL of the config file in the installer, but leave the option to automatically use a certain config file specified by a command line switch. The reason for this being that an install process should be as easy and as dumbed down as possible. Having to paste a URL into the installer would (sad as it is) be confusing for some (Especially the ones that just power though every install without reading anything). If a command line switch was introduced into the installer it would make it easy to package the installer into an executable archive that would extract the installer and run it, specifying the correct config file path. After that, updates would proceed as normal.

    This switch would have no impact on the program at all if the switch wasn't specified.

    Ex: If the installer was run normally, it would ask for an (optional) config file to use. If the installer was run as "Apex_Installer.exe /useconfig http://blah.com/config.xml" then (if the file existed and was a valid config file) it wouldn't prompt the user to enter a config file and use the one at the specified URL.

    As an aside, one direction that I would like to see more installers go in is the thin installer. A thin installer is basically just an application that runs, looks for latest version of the program, downloads it, and installs it. It ensures that every user is always installing the latest version. Also, if Apex used a thin installer, by copying the installer to the install directory, it would make bringing back the old update feature a snap. When the user clicks the update button, it could just execute the thin installer and install the update, no need to open the web browser and download a separate installer. Plus, hubowners would never have to update their download links or anything on their individual sites. Point users to the thin installer and be done with it. Couple that with the option to specify a config file via a command line switch to the thin installer and it would be the perfect setup.

    Just my 2 cents :)


  9. I heard that the ApexDC++ team was thinking of allowing a config file to be bundled with the installer.

    I think this is a great idea as it allows hubowners to pre-configure Apex to connect to their hub with all the settings they want (or don't) already configured.

    A few ways of doing this were being tossed around, including looking for a config file in the same directory as the installer and allowing the user to import a config file into the installer.

    I was thinking that another good way of doing this would be to include an optional command line switch that would tell the installer to use a config file at a URL specified (EX: /useconfig http://blah.com/blah.xml)

    The Apex toolbar/OpenCandy/Conduit stuff would all still be displayed.

    Just another way of allowing hub-owners to pre-configure clients without tampering with the installer.

    Thoughts?


  10. I notice couple thousands hits on it every few weeks. B)

    Linked on our website you mean? Or externally?

    Linked from the website somewhere. I honestly don't remember where I was when I clicked on it, but I was somewhere on this site.

    Can you check the referring URL on your website analytics page?


  11. Will users who don't install the toolbar be able to access the beta version announcements via an RSS feed or something? I'm not (and I'm sure some other users aren't as well) partial to installing toolbars, no matter how reputable the devs are.


  12. Have you guys considered implementing the auto-away feature, not only for when the program is minimized, but also when you launch a full-screen program? Also, it would be nice it it would support the option to use the secondary away message. It would be nice to be able to have your client automatically set you as away when you launch full screen game and don't reply to PM's for hours on end.

    Thoughts?


  13. I wonder if any of the people voting because of this topic have actually been following the development of any other client. Actually, I wonder if they have even been following the development of Apex, aside from clicking the update button every once in a while.

    EiskaltDC++ has basically come up from nowhere this year, with new commits to the git repo almost daily. I haven't really seen that same evolution with Apex.

    I like Apex, and I like EiskaltDC++, both are excellent clients and I'm not saying one is better than the other.

    What I am saying is that this poll isn't a popularity contest, it isn't to do with which client is better, it's which client "has made the most progress and evolved most during the year" and I think people should do some research before blindly casting a vote out of loyalty.


  14. @Toast: Be reasonable. I was testing out EiskaltDC++ to see how stable it was because I am in need of a good Mac client and wished that ApexDC++ had some of it's features. I'm not saying "Neener neener, EiskaltDC++ is better" I'm saying that I like some of it's features and would love to see them implemented in ApexDC++. That's what this forum is for, suggestions on how to make ApexDC++ better. You would have me post this somewhere else?

    @Peetboy: I do that ALL the time, that's another reason I'm suggesting this.


  15. That is true, but in my experience, it is faster. Instead of a press tab, compare cycle, it would be a tab, find, select. Yes, EiskaltDC++'s method is slower by one keystroke, however, if the user you want to pick isn't the first user displayed (and in large hubs it usually isn't) it's faster (for me anyway, I'm assuming most people's brains work the same way) to pick the name out of a list rather than to repeatedly hit tab and check if the name is correct.


  16. I've been using EiskaltDC++ on Linux for a while and a couple of the features in it that I really miss in ApexDC++ are the expanding text box and its username tab-completion.

    The expanding text box is pretty easy to explain: Whenever you type a line in the chat box followed by SHIFT+ENTER to start a new line, the text box expands so you can see all the lines you have typed. It also works if you paste a multi-line bit of text in. Once you press enter to submit the text it returns to its normal size.

    The username tab-completion is done a little more intuitively in EiskaltDC++. Instead of cycling through names by pressing tab over and over, it displays a list of all users that match the typed text as soon as you press tab. You can then press tab/up/down to select the username you want and hit enter to confirm. Also, it would be nice if the name tab-completion worked in PMs as well as mainchat.

    Examples: http://img89.imagesh...apexdcideas.png

    Overall, I think that these features would be excellent additions to ApexDC++, please give them some thought.


  17. I'm testing DC client called EiskaltDC++ and I found many usefull features which I would be happy to see in Apex. :)

    1. The settings menu is not a treeview but there are 8 sections on the left and each section has subsections on the right as tab panels. Settings are grouped and well-arranged, you don't need to expand submenus in the tree.

    2. The status of indexing is shown as progress bar in status bar.

    3. Some features has their own icon in the Toolbar (e.g. Turn on/off chat, search in the chat, open own filelist, show/hide transfers)

    There is also more features (e.g. IP Filter, Spam Filter, LUA Console, download limit per virtual folder, ...). Just try it and make your own opinion.

    I use EiskaltDC++ on Linux. One feature I really like and would like to see in ApexDC++ is the side tab bar, it makes it really easy to navigate to all your tabs and is a lot less confusing than having a pile of 30 tabs at the bottom of your screen.


  18. I don't see what the big deal is. In the hub I run, I detect the use of DHT and kick them with a link to a tutorial on how to turn it off. Simple. There hasn't been a drop in the user count and everybody running ApexDC++ is running the latest version. The only thing thats wrong with this situation is the hub owners. If they can't be bothered to learn LUA (or whatever) and write the DHT blocking script (or hell, copy it from someone on the internet), and instead choose to ban the client because it's easier, they really shouldn't be hub owners. With that being said, not being able to release a pre-configured version that disables DHT is a little over the line. I did some testing on my machine. I installed the client, looked at the DcPlusPlus.xml settings file and UseDHT was set to 0. I ran the client and looked at the settings file again and UseDHT was set to 1. What gives guys? I understand the need to include the feature but why force feed it to people?


  19. Hmmmm, not sure that DHT being automatically enabled is really a good thing for private hubs but I guess most people wouldn't know to enable it so it's better off being on by default.

    In any case, it's simple enough to block clients with DHT enabled hub-side for private hubs so good job bringing more features in ;)


  20. 3 Quick feature suggestions:

    Log Exclusion:

    Sometimes logging a specific user is pointless (For example, a chatroom when "chat history on join" is enabled). An option to not log specific usernames would we a very welcome inclusion so the client doesn't end up redundantly logging 10 lines of chat history every time it reconnects to the hub.

    Autoreply Exclusion:

    The option to exclude users from being auto-replied to would be useful for clients that run on servers (without people actively monitoring them) that are set as "away" in order to inform people that PM it that it's a server and won't respond. Right now, every time a new chatroom message is sent to one of these DC++ servers (such as on connect), it replies with the default away message, which is very annoying to everyone else in the chatroom. The solution for now is to not turn the away feature on, but it's nice to have when a user (thinking it's a regular user) PMs a server and gets a "Sorry, I'm only a bot, contact [insert owner nick] instead" message. Being able to exclude users from being auto-replied to would solve this problem entirely.

    Sidenote: Being able to exclude users by username or by use of regex in both cases would also be nice.

    Tab rearranging preview:

    It is possible to rearrange the tabs, however it doesn't show until you let go of the mouse. A more graphically appealing way would be to do what most other programs with rearrangeable tabs (the Windows 7 taskbar, Chrome browser tabs, etc) do, show a live preview of the tabs new layout, with animations.


  21. No, I mean setup humane password on  private message receiving, as anti-spam feature. Message will be delivered to me only if sender can answer on simply human question, for example: "How many is two plus zero ?", correct answer is "two".

    Once again, I think you'll run into the same problem; not all clients will support this. Plus, it would get annoying every time I want to send a message I have to answer some question. Just use the ignore user feature if a user starts spamming you.