Remove Advertisements

A Call to Arms - Cataclysm Mechanics testing

Warning: Theorycraft inside.

Moderators: Fridmarr, Worldie, Aergis, theckhd

Re: A call to arms

Postby Rasmfrackn » Wed Jul 28, 2010 6:00 pm

I've got an older version of MATLAB (7.0.4) that I uh... procured... from work. I assume you aren't doing anything too crazy or using any toolboxes, so it should be fine. Otherwise I can go get Octave or whatever. And we use SVN there too, so I've got tortoise installed as well.

This is the sort of thing I do enjoy doing, too. No Beta access here, though one of my guildies just got an invite yesterday and I asked him to make a Paladin premade in case I had mechanics questions. And of course I know my way around Wowhead more than I'd care to admit. :)

For other people interested but nervous, like Theck mentioned, MATLAB is probably one of the easiest to learn tools that I've used, in that its help system/files are actually really easy to understand and navigate. There are very few if any subtle "gotchas" like you'd expect from a compiled programming language or something like that.
Rasmfrackn
Dwarf Paladin
Icecrown Server
Eng/Scribe/Masochist
User avatar
Rasmfrackn
 
Posts: 1014
Joined: Fri Aug 17, 2007 12:11 pm

Re: A call to arms

Postby Levantine » Wed Jul 28, 2010 7:13 pm

Aye, MATLAB is an incredibly easy tool to learn how to use if anyone wants to help out. I did a uni course on it and the first thing the tutor said to me was "This is a pretty pointless class, you could all teach yourself more than enough for a HD be going through the help files."
User avatar
Levantine
 
Posts: 10817
Joined: Fri Oct 26, 2007 6:48 pm
Location: NQ, Aus

Re: A call to arms

Postby Kelaan » Thu Jul 29, 2010 9:56 am

How well would it work in Octave?

{EDIT: Looks like you already mentioned it in your other sticky. Whoops. :)}

The files themselves are available via Google Code. The easiest way to get the whole batch is through SVN, however I hope to set up a nightly .zip repository down the line once the code has stabilized. Please contact me via PM or through the Google Code system if you'd like to help contribute to the code base.

I take it this means that the code is hidden unless we PM you? Is there no read-only published version? I'm not really savvy about Google Code's services.
User avatar
Kelaan
 
Posts: 4036
Joined: Thu Jan 03, 2008 12:01 pm

Re: A call to arms

Postby tlitp » Thu Jul 29, 2010 10:26 am

Kelaan wrote:I take it this means that the code is hidden unless we PM you? Is there no read-only published version?

Yeah, the code is hidden. Them pesky Rogues. :P
The PM merely grants access to upload privileges.
User avatar
tlitp
 
Posts: 556
Joined: Mon Jul 27, 2009 3:25 pm

Re: A call to arms

Postby Arianne » Thu Jul 29, 2010 10:33 am

I'm happy to help with proofreading/coding. I've not worked in Matlab before, but I have worked moderately in R, so Matlab shouldn't be a big stretch.
Arianne
 
Posts: 502
Joined: Wed Jul 11, 2007 1:22 pm

Re: A call to arms

Postby theckhd » Thu Jul 29, 2010 10:43 am

No, the code wasn't hidden. I just wasn't going to give out the project name until I finished the last few pieces of the framework. Pesky rogues indeed.

But now that the cat's out of the bag, feel free to take a look at what's on there. You can't screw anything up without being added to the project, so don't worry about borking anything. tlitp and I are doing some final clean-up/consistency work on the code that's there, and I'm going to be writing the ability module some time today or tomorrow. At that point, the mass data mining / coding operation can begin.

I'll make a more detailed post about where we stand and what needs to be done in a few days when I feel like the code is ready to be picked apart and dissected.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7756
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Re: A call to arms

Postby Gaffer » Fri Jul 30, 2010 2:14 am

I'd be willing to help out in anyway that I can. I have beta access and pretty extensive programming experience; never with MATLAB, but can't imagine it's all that different. I'll take a look through your source and MATLAB texts you posted and let you know how much assistance I can provide.
Gaffer
 
Posts: 139
Joined: Tue Oct 14, 2008 2:39 am

Re: A call to arms

Postby Gaffer » Sun Aug 01, 2010 5:58 pm

I'm relatively unfamiliar with Google Project Hosting. Do they offer a method to "subscribe" to a project. Basically, I'm looking for a way to get change logs mailed out to me on a daily basis.
Gaffer
 
Posts: 139
Joined: Tue Oct 14, 2008 2:39 am

Re: A call to arms

Postby Rasmfrackn » Sun Aug 01, 2010 6:06 pm

Sorry for being a little uncertain, but while this was a good informational posting, there weren't any overt instructions, right? Should I be sending you a PM here, or on the google project page, or something?

Also, I just got a beta invite over the weekend, so I can in fact help there as well. :)
Rasmfrackn
Dwarf Paladin
Icecrown Server
Eng/Scribe/Masochist
User avatar
Rasmfrackn
 
Posts: 1014
Joined: Fri Aug 17, 2007 12:11 pm

Re: A call to arms

Postby theckhd » Sun Aug 01, 2010 6:57 pm

Gaffer wrote:I'm relatively unfamiliar with Google Project Hosting. Do they offer a method to "subscribe" to a project. Basically, I'm looking for a way to get change logs mailed out to me on a daily basis.

There's an RSS feed that will update you any time someone commits to the project.

Rasmfrackn wrote:Sorry for being a little uncertain, but while this was a good informational posting, there weren't any overt instructions, right? Should I be sending you a PM here, or on the google project page, or something?

Not yet. If you'd like to be added to the project, a message here or via the project page is fine. I'm hoping to have a little time Monday to do a few final clean-up tasks and then post some instructions for the sort of stuff I'm looking for.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7756
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Re: A call to arms

Postby theckhd » Mon Aug 02, 2010 11:58 am

OK, project officially open for business.

theckhd wrote:As of today, I'm opening this thread for discussion. Tlitp and I have been working hard on the code to get the basic framework in place. Things like, "how do we represent/store this information" are mostly taken care of, and the code is surprisingly readable.

Here's where the community comes in. I need volunteers willing to help flesh out the code base and get it up and running. There are a number of ways that you, the dedicated forum poster, can contribute. For example:
  1. Code Monkey - someone with a basic knowledge of MATLAB who's interested/willing to help maintain the code base. Stuff like making minor corrections to different modules or writing calculation files. Prerequisites would be that you know enough not to screw up the code, and have a passing familiarity with how to do SVN checkouts/commits or are willing to learn how to do so. The project is hosted on Google Code: Project matlabadin.
  2. Error checkers - People who will look through the code and try and spot mistakes. Things like, "You missed the Seals of the Pure modifier for Seal of Awesomeness" or "I ran the code in Octave and got an error on line x of module y, here's how I fixed it." If you don't want to mess around with SVN commits but can read MATLAB code, this could be the job for you!
  3. Wikinators - Eventually I want the wiki to include a page for each module describing what it does and how it's used. At this point, I don't have a specific idea how I want to do this, and won't have time to work on it until much farther down the line. If someone else wanted to make this their pet project, it would be an immense help.
  4. Data Miner - Willing to do simple fetch/retrieve operations. Things like "Here's a list of all of the spell coefficients and base damages for our abilities at level 85, according to wowhead." Beta access isn't even necessary for this. If you're able to read MATLAB code and willing to check these sorts of things against the code and post about possible errors, that's even better.
  5. Tester - I'll need people to go in and test things in the Beta from time to time. Things like "Does Talent X affects the damage of Ability Y or not" or "What's the proc rate on Talent Z?" This would probably require beta access.

How to contribute
  1. If you are interested in helping and need project access on Google Code: Send me a PM with your Google Account e-mail address and the type of work you'd like to help out with. You can contact me either on the boards here or via theckhd@gmail.com. You need a Google Account to gain access to the project. If you contact me via e-mail, please mention your forum name so I have some clue who I'm talking to.
  2. If you are interested in helping with the code but do not need project access: Simply do whatever it is you're willing to do to help, and post your findings, observations, comments, or whatever in this thread. Also, keep an eye on this thread, as tlitp and I will periodically be posting requests when we need things checked or tested. I will try and keep a "master list" of unresolved issues/requests in the post above this one.

Feel free to post questions about the code as well. If you're trying to help but don't understand what a certain line of code (or even an entire module) is doing, ask! Chances are one of us will have a good answer, but who knows - you might catch us making a bad assumption or doing something in a more complicated fashion than is necessary.


I'm not sure whether it makes more sense to continue the discussion here or in that thread. The most logical division is probably this:

  1. Discussion of the code base itself or specific mechanics - that thread
  2. Questions about MATLAB, SVN, and prerequisite stuff - this thread.

While I'll be making requests in the other thread, I'll probably be cross-posting some of them in this forum as well, either here or in the Ask a Beta Tester thread, simply because they'll get more exposure here. Especially if they go unanswered the first time I ask in the other thread.

Right now I have a sample calculation file that runs through all the modules and confirms they don't generate errors. For someone who wants to start working with the code, I'd suggest reading it and each of the modules it calls to get a feel for the framework.

This morning I went through stat_module and ability_module (SM & AM) and implemented most of the talents, with several exceptions (Reckoning, Grand Crusader, and a few other more complicated ones). I haven't had time to do the same consistency check for buffs yet, so that could be an obvious project for someone who figures out the code relatively quickly.

In addition, I'd love it if someone was interested in taking charge of the wiki.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7756
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Re: A call to arms

Postby Gaffer » Mon Aug 02, 2010 5:45 pm

Excuse me for being a little dense here, but is it correct to assume that sourcing your included sample_calculation.m should complete successfully? I've been having trouble using FreeMat 4.0 to hit the "Success!" warning in the file and just wanted to make sure I'm not overlooking something basic.
Gaffer
 
Posts: 139
Joined: Tue Oct 14, 2008 2:39 am

Re: A call to arms

Postby theckhd » Mon Aug 02, 2010 6:51 pm

Gaffer wrote:Excuse me for being a little dense here, but is it correct to assume that sourcing your included sample_calculation.m should complete successfully? I've been having trouble using FreeMat 4.0 to hit the "Success!" warning in the file and just wanted to make sure I'm not overlooking something basic.

Last I checked, yeah. It should run and just give you the "Success" warning.

If it's giving you errors, let me know what they are and I'll see if I can replicate them.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7756
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Re: A call to arms

Postby Marblehead » Mon Aug 02, 2010 7:43 pm

theckhd wrote:
Gaffer wrote:Excuse me for being a little dense here, but is it correct to assume that sourcing your included sample_calculation.m should complete successfully? I've been having trouble using FreeMat 4.0 to hit the "Success!" warning in the file and just wanted to make sure I'm not overlooking something basic.

Last I checked, yeah. It should run and just give you the "Success" warning.

If it's giving you errors, let me know what they are and I'll see if I can replicate them.

From stat_model.m:
Code: Select all
mod.EfaE=0.3.*sign(talent.EyeforanEye)+0.05.*talent.EyeforanEye;

Freemat 4.0 cannot recognize the function sign().
Image
Life is not difficult, people are.
User avatar
Marblehead
 
Posts: 202
Joined: Sun Aug 02, 2009 9:28 pm
Location: Bloodhoof (EU)

Re: A call to arms

Postby Gaffer » Mon Aug 02, 2010 10:02 pm

Using a pretty subpar implementation of MATLAB's sign that'll suffice for this situation:

Code: Select all
function [signedMatrix] = sign(unsignedMatrix)
    for i = 1 : length(unsignedMatrix)
        if(unsignedMatrix(i) > 0)
            signedMatrix(i) = 1
        elseif(unsignedMatrix(i) < 0)
            signedMatrix(i) = -1
        else
            signedMatrix(i) = 0
        end
    end


I was able to progress to another error in stat_model.m:

Code: Select all
player.str=floor(floor((base.str+gear.str+extra.str)).*mod.BoK);


Error: Unsupported type for get(string)

On the plus side, Octave seems to work through this fine. FreeMat is just nice and visual.
Gaffer
 
Posts: 139
Joined: Tue Oct 14, 2008 2:39 am

PreviousNext

Return to Advanced Theorycraft and Calculations

Who is online

Users browsing this forum: Bing [Bot] and 1 guest


Remove Advertisements

Who is online

In total there are 2 users online :: 1 registered, 0 hidden and 1 guest (based on users active over the past 5 minutes)
Most users ever online was 380 on Tue Oct 14, 2008 6:28 pm

Users browsing this forum: Bing [Bot] and 1 guest
?php } else { ?