• published the article Download counts more accurate

    Hello friends, ckknight here.

    Previously, we haven't been tracking Curse Client downloads as something that would increment our download counters. This has now been fixed so that every download on the Curse Client will properly increment the download counters now.

    Already we're seeing a _dramatic_ increase of downloads. It's really a wonderful sight to see how many users are really downloading my addons.

    Note than from one refresh to the next, the download counts might not update, as there is heavy caching in place, but every download is still counted.

    In no way, shape, or form are we "faking" our numbers, we try to be as accurate as possible.

    Posted in: Download counts more accurate
  • published the article Announcing our new dating section

    This is an April Fool's joke

    If you're an addon author like me, you probably got in the game for the sweet, sweet ladies. It just seems that meeting them has been a pain, so Kaelten and I (ckknight) have been collaborating on the design of the new CurseForge.com dating system.

    Through our dating system, you, an addon author, can easily pick up the fangirl honeys. You will be put through a rigorous test to check for your 57 points of compatibility that will be automatically matched with fangirls in the community based on their previously made forum posts.

    You may be wondering, "ckknight, how awesome is this?" The answer is obviously lots. Lots awesome.

    From our initial run, due to the small authorbase (relatively) and the large fangirl base, we will be able to assign up to 274 unique fangirls to each author. So if you feel self-conscious about a date with one, or didn't realize you had lettuce in your teeth, don't worry, just skip that one and go to the next. We have a speed-dating system set up so that you'll spend 3 minutes with one girl and then move onto the next. Unlike other speed dating you may have seen, read about, or participated in, you will be the only male with upwards of 20 to 30 females all wanting a piece of you. Remember, these are girls who already love you and probably have a shrine to you and for you.

    We at CurseForge.com want to give something back to the author community, and this is the best way we know how.

    Do I hear wedding bells? Wedding

    Posted in: Announcing our new dating section
  • published the article CurseForge, WowAce, and the future

    Hello friends, ckknight here.

    Some of you may be wondering what the next step for CurseForge/WowAce might be. You may have seen the piles of tickets that the CurseForge project has and it can be disheartening.

    So, I'd like to let you know that development absolutely has not stopped. We have limited resources with regards to manpower, as it has been essentially just one person (me, ckknight) doing nearly all the work on the site itself. Kaelten has been working furiously on the Curse Client, and I think we can all agree that it has blossomed under his guidance.

    I've been working on the upcoming Author Rewards Program and Author Store, for when we launch Curse Premium and the Author Rewards Program soon.

    The current gameplan is to completely overhaul the HTML and CSS on the website. While we previously had a frontend developer working with us, that is no longer the case and hasn't been for about a year, causing general bad practices to leak into our display code. This will lead to an overall greater polish for both WowAce and CurseForge. Things will also be very easy to change and add to in the future.

    As it stands, if we want to add any new features, wrestling with the CSS has become a case of the Old Lady Who Swallowed a Fly, where anything we do can cause a ripple effect, leading to slower development and an overall lack of polish.

    Once this is finished, the website should act a lot more consistently, provide a better user experience, and allow further extensibility in the future. Also, we'll be able to call ourselves "Web 2.0" if we have rounded corners and gradients, right? ;-)

    For an idea of some of the future ideas we have, so you know that we actually have future ideas:

    • User-submitted guides
    • Web-based repository browser
    • Ticket enhancements
    • Various bugfixes and small features.

    If you have any ideas, we're more than willing to hear them through CurseForge's ticket system. Also, if you see a good idea, feel free to vote it up. That's a big reason on how we prioritize the next thing to do.

    Posted in: CurseForge, WowAce, and the future
  • published the article WikiCreole markup

    Hello, friends.

    Up until now, CurseForge and WowAce (since the transformation to the CurseForge codebase) have used "Curse Wiki" as the default wiki type. We have implemented the feature-rich WikiCreole markup and plan to make it the default on Monday (March 9, 2009).

    What's wrong with Curse Wiki?

    Curse Wiki is a custom implementation of the MediaWiki markup. The code we use for it is rife with issues, including lack of readability, inherent slowness, potential security issues and general bugs, and lack of extensibility.

    The developer of the Curse Wiki format has no longer been with us here at Curse, Inc. for a year now, and no one can read his code, and when anyone tries, it's impossible to cringe.

    Why choose WikiCreole over something else?

    We agree with the philosophy of WikiCreole, the code is clean and readable, it's fast enough for our use cases, and the library we use (CreoleParser) is very extensible.

    Due to the awesome extensibility, we were able to add nice relative links, e.g. [[Some page]] or [[Project:Some page]] rather than forcing full links as we have. We also support images nicely, e.g. {{4}} or {{Some image}} or {{Project:4}} (and so forth).

    We were also able to add syntax highlighting with the <<code>> macro.

    print("Syntax highlighting is awesome: " .. 42)
    

    See Markup Types / WikiCreole for the full syntax examples of WikiCreole.

    Will I still be able to use Curse Wiki?

    Yes, this will still be an option, just not the default one.

    We may eventually disable creating new pages/comments using Curse Wiki (likely if a security issue arises), but we would still allow old pages using it to continue to be editted as Curse Wiki.

    Are you getting rid of any of the other markup formats?

    Probably not. We've cleaned up the code for plain text and Safe HTML, and made BBCode a thin wrapper around WikiCreole, so we see no reason to remove those three at all.

    We may eventually support more formats, such as Textile, Markdown, Restructured Text, etc.

    Posted in: WikiCreole markup
  • published the article Downtime Monday (Done)

    Hey all, we're planning on having a downtime on Monday, January 19, 2009. Planning on starting around 10 AM CST and it shouldn't last more than a few hours.

    This will affect the repositories and the website, but not forums.

    We're planning on migrating from MySQL to PostgreSQL, since we've had just far too many issues with InnoDB locking up the database making the entire site inaccessible for minutes at a time, and we can't afford to lose transactions and ACID compliance by switching to MyISAM. Here's hoping it fixes the problem.

    Addendum: And we're all done. Very anti-climactic, if you ask me.

    Posted in: Downtime Monday (Done)
  • published the article Forum maintenance (done)

    Hello, friends.

    We're doing some maintenance on the forums system, moving boxes around in the server room and all. We expect the downtime to last no more than a couple hours.

    To pass the time, here's a kitty:

    Addendum: We're all done.
    Posted in: Forum maintenance (done)
  • published the article Downtime again. (Done)

    Hey beautiful people, we're gonna have another downtime today.

    Hopefully this won't take too long, but it's always hard to gauge.

    We're transferring the DB back to the real DB server, which has been upgraded to a newer OS as well as 64-bit, so we can finally use 8 GiB of RAM instead of just 2 GiB.

    Addendum: And we're done and everything went smoothly.

    Posted in: Downtime again. (Done)
  • published the article Downtime's over!

    Hello friends.

    We've been having some DB issues with wowace and curseforge, so we're going to be doing some tinkering on the DB server.

    I'm sure some of you have noticed the long pauses when trying to visit pages on wowace and/or curseforge, and our hope is to fix this issue.

    We predict that the downtime shouldn't be more than a few hours, but it's always hard to gauge these things.

    We also plan to have another downtime soon to finish the task, though probably not today.

    Wait, I'll fix it

    Addendum:

    We're back up, people. It only took half an hour, which we're very pleased with. There still will be another downtime later, but probably not today.

    Posted in: Downtime's over!
  • published the article Packager Enhancements
    Yesterday we launched a series of enhancements to the packager. Here is a quick rundown of the new features:
    • You can now include a subfolder from mercurial and git repositories as externals.
    • You can now include tags from mercurial and git repositories as externals.
    • You can now specify to use the latest tag of a project as an external.

    These features are somewhat embodied in the following example:
       externals:
           libs/LibStub: svn://svn.wowace.com/wow/libstub/mainline/tags/1.0
           libs/CallbackHandler-1.0: svn://svn.wowace.com/wow/callbackhandler/mainline/trunk/CallbackHandler-1.0
           libs/LibMonkey-1.0:
               url: svn://svn.curseforge.net/wow/libmonkey-1-0/mainline/trunk
           libs/LibBanana-1.0: 
               url: git://git.curseforge.net/wow/libbanana-1-0/mainline.git
               tag: 1.2
           libs/LibSuit-2.0:
               url: http://hg.curseforge.net/wow/libsuit-2-0/mainline
               tag: latest
           libs/LibSubThingy-2.13: http://hg.curseforge.net/wow/libthingy-2-0/mainline/libsubthingy-2.13
    
    These features have been tested, however issues may still exist, please notify us immediately if there are any issues. Also if the examples aren't clear enough let me know ;)
    Posted in: Packager Enhancements
  • published the article Per-project role-based access control system

    Hey, beautiful people.

    I've been working on a per-project role-based access control system, and it's finally in place now. You may have guessed yesterday when the site was having some downtime that something was happening, and we were working out the final kinks of the system then.

    Side note: Technically, this is per-repository and not per-project, but the mainline repository defines users' permissions in a project.

    What this means:

    Instead of just Project leader and authors, we can have multiple roles, e.g. Translators, QA, Documenters, Authors, Managers, and really anything that we can think of.

    The way the system works:

    There is a set of roles that we administrators define. Each role has a set of permissions attached to it.

    Each repository has a set of role assignments which grant a user to one or more roles (Yes, you could be both QA and a Translator at the same time).

    Each user would then have a set of permissions on a repository defined by the set of permissions of all their roles on that repository.

    Here's the set of permissions:

    • Abandon project
    • Clone closed repository
    • Commit to code repository
    • Delete repository
    • Manage english project translations
    • Manage files
    • Manage project components
    • Manage project pages
    • Manage project reward splits
    • Manage project milestones
    • Manage project images
    • Manage project tickets
    • Manage project ticket templates
    • Manage relationships
    • Manage remote sync
    • Manage roles
    • Merge project
    • Resubmit project for approval
    • View code repository
    • Manage repository
    • Manage project

    As it stands, we only have Manager (which has all permissions) and Author (which doesn't have as many permissions).

    We do want to work on adding more roles, but we need good ideas on what is wanted as far as that is concerned. So if you have some good ideas, feel free to contact us or just leave a comment here.

    Currently, all managers are also authors, and any new projects will have the owner be both a manager and an author. Note that the manager can unassign himself as an author.

    Posted in: Per-project role-based access control system
  • published the article Author Rewards Program Launching Soon

    Hello, friends.

    We're going to be launching a program to award authors with redeemable points. You'll be able to spend the points on game cards or similar things.

    You have to opt in to receive points. You can do this at http://www.curseforge.com/home/rewards-program/....

    This is still very much a work in progress, so you won't see points accumulating until we officially launch this. There also will be a wait between when points accumulate and when you can spend them at the store.

    Points will be distributed based on popularity of the project. We're probably not going to reveal the exact algorithm to prevent gaming the system. We will investigate allegations of gaming the system and are more than happy to ban those who try to cheat. This is a nice pat on the back for all the authors who help drive traffic to curse, a way to say thanks, and if everything goes smoothly, make it so authors don't have to pay for their own WoW accounts, and for the addons that drive the most traffic to the site (Omen, QuestHelper, etc.), some extra perks.

    Kaelten and I (ckknight) are doing the coding on the rewards system and the eventual store. No, we didn't sneak in code to steal fractions of points from people just like in Superman 3, no matter how tempting.

    Posted in: Author Rewards Program Launching Soon
  • published the article Lich King Beta: Author Key Giveaway!

    We're very excited to offer a unique opportunity for AddOn authors with projects hosted on the Curse Network. You've supported us over the years, and this giveaway is part of our thanks for all the hard work and time you've devoted to improving the experience of World of Warcraft players worldwide.

    We're going to be giving away Beta keys for Wrath of the Lich King, and any AddOn author is eligible! There are a few fairly simple pieces of criteria which must be met, but all-in-all, if you're an active member of the author community, there's a good chance you'll be hearing from us soon!

    How do I enter?

    It's fairly simple to enter; send an email to [email protected] and enter the subject "AddOn Author Beta Key Giveaway"

    Include in the email:

    • Your Curse username
    • Your primary AddOn projects
    • The websites where your AddOn projects are hosted here on the Curse Network

    And of course, the criteria to be eligible:

    • You must be an AddOn author with at least one valid AddOn project here on the Curse Network.
      • The project must be your creation. We cannot stress this enough; AddOns falsely claimed as your own may disqualify you from this and any future contests on Curse.com. Please respect the time AddOn authors have put into their work by leaving the opportunity to valid authors.
      • Compilations do not count as valid submissions for the giveaway.
      • At least one of your projects must be compatible with World of Warcraft patch 2.4.3.
      • If there are multiple members on a winning project, the code will go to the "Project Lead" and they can choose whether to use it or give it to another member of the team.
    • Only one Beta key will be given out to each author.
    • You must be entering the giveaway with either a valid US or EU World of Warcraft account -- Chinese and Korean accounts are currently not eligible for entry.
    • You must enter the giveaway with a valid email address which we can reply to in the event you're chosen.
    • Blizzard Entertainment reserves the right to deny entry into the beta.

    Authors chosen for the giveaway will be contacted to supply additional information Blizzard requires to receive the Beta keys, so please submit your entry via a valid email address.

    Once again, thank you from everyone at Curse for all the hard work you've put into your AddOns! See you in Northrend soon!

    Posted in: Lich King Beta: Author Key Giveaway!
  • published the article Introducing Email Subscriptions

    In a continued effort to make the sites content more accessible and usable we're launching update subscriptions via email. Until recently keeping tabs on your project (or other projects you're interested in) has been a fairly manual task. Now we have two systems in place to make this easier.

    The first being the RSS feeds we launched last week, but now in addition to them we have a email based subscription service.

    A quick rundown of how they work:

    1. You subscribe via a project's Manage Subscriptions url (i.e. CurseForge.com's Subscriptions) to any of the available subscriptions.

    2. Each subscription has delivery and frequency options.

    3. You will then receive updates as you've specified.

    A couple of notes:

    • "Real Time" currently has a slight bit of entropy in it, if this is confusing or undesirable it can be moved.
    • "Suprise Me" is a random time, its more of a 'fun' feature but still should be useful.
    • It is recommended that you put [email protected] in your address book or contact list to help ensure that you receive updates to your inbox. This is especially important for certain services such as Hotmail and Windows Live Mail.
    • There are currently three subscriptions available. with more to be introduced this week.
      • Files Updates
      • Comments on the Project
      • Ticket Updates (including comments)

    Other future plans include:

    Please vote on the above linked tickets to signify their importance to you.


    Posted in: Introducing Email Subscriptions
  • published the article RSS, Repositories, and More!

    Well, we've had a busy week.

    Here is a quick rundown of the features we've hammered out over the last week.

    Ticket System Enhancements

    • Components - You can now subdivide your project into components to organize your tickets.
    • Milestones - You can keep track of what version of your project things get fixed in.

    RSS Feeds

    On a per project basis there are now multiple rss feeds.

    • Latest Images
    • Latest Files
    • Latest Tickets
    • Latest Pages
    • Latest Comments

    There is also a general comments RSS feed at comments.rss

    Open Repositories

    These are special repos that should be accessible (both read and write) to any member who has activated their repository account.

    SVN Access

    Ok, so we know that doing "svn+ssh://" really, really blows! Especially on windows. So we've added a new, additional, way of accessing the SVN repos. You can now use svn:// directly with username/password auth.

    Note! doing svn:// is not as secure as svn+ssh. However, it is much easier to use with tools like TortoiseSVN supporting it with no additional setup.

    Your password will never be submitted over the wire in plain text so it's secure in transit, however, your SVN password WILL be stored in PLAIN TEXT on the server.

    Because of the potential security risk we've created a separate SVN password. Your site login password will never be used for SVN authentication. We strongly suggest that you use a svn password that is meaningless and is not used to secure anything valuable.

    We attempted to find a way around doing it this way, but we were not able to. Please notify us if you know of one. Do note though mod_dav_svn in its current form isn't really suitable to manage our layout. We'd need something along the lines of a great-grandparent path attribute in order to make its deployment feasible. (volunteers?)

    You can set this password via this link. The link is located on your profile page under the Profile Actions dropdown.

    More Packager Options

    In addition to the open repository option we've added another option. You can now specify how the automatic packager behaves towards your project. You can tell it to only package releases, or not at all, to package beta and releases, or everything.

    Poll

    As many of you've noticed, we've added a quick poll system to the front page. This is more of a 'for fun' feature than anything else, however there may be times where we want to ask user opinions about what you'd like to see.

    I think that's just about everything. However, if you think we're not doing something quite right or you'd like to see something we don't have yet, please let us know!

    Posted in: RSS, Repositories, and More!
  • published the article Projects now require approval

    Previously only files required manual approval, but since we've noticed a trend of empty projects showing up or attempts to be malicious, we've added manual approval for projects as well.

    What does this mean to you?

    Basically, you have to wait for an administrator to approve your new project (and as usual, your files). We're available pretty much all the time, though. So it shouldn't be a problem. If you feel we're slow, feel free to stop by IRC and poke us. Try poking Zyuu first, if it's regarding approvals.

    IRC Information: #CurseForge @ irc.freenode.net

    Posted in: Projects now require approval