« first day (21 days earlier)      last day (3527 days later) » 
01:00 - 16:0016:00 - 00:00

4:00 PM
any suggestions on 2nd screen size/
currently running one 22.5'', I need a second one
I have a second one in work but not at home and yeah
I'm thinking about getting a 27'' and another 22.5'' with SLI
 
the biggest you can afford would be my recommendation
 
desk real estate is a concern unfortunately
my desk is not all that large
it might be able to fit two 22''
even worse
 
@DanPantry It should be illegal to post advice like that
I think a lot of Bukkit plugins needs a Code Review
 
lol
ye
my favourite part is I gave the answer he needed and explained why the other two were subpar
and then this guy comes along and just says "you could use these ignore what the guy above me said" effectively
 
noobs implies ignorance
these gyus aren't ignorant they're just dumb :p
 
@SimonAndréForsberg For Spring MVC, I'll first try to set up a simple thing
 
@skiwi I know there are other Java libraries for that too, I just can't remember what they are
 
@Controller
@RequestMapping("/bot")
public class BotController {
    @RequestMapping(value = "/test", method = RequestMethod.GET)
    public void test() {
        System.out.println("test");
        Store.INSTANCE.getChatBot().postMessage("test");
    }
}
This should work?
but it doesn't
in my servlet.xml I have configured <context:component-scan base-package="com.skiwi.githubhooksechatservice.mvc.controllers" />
 
Have you configured that it should be /GithubHookSEChatService anywhere?
 
4:31 PM
Not explicitely
but the example files added an index.jsp that is accessible from that path
and the whole application actually is deployed inside /GithubHookSEChatService
 
If you would have a repository it would be easier to help, right now I don't know what I can do
Or well, I can start up STS and take a look at my code
 
I've pretty much followed all tutorials
I might hook it up onto Github if you could show how to hide away my username and password in some config file
 
Hmm no other way as "command line parameters"?
I coudl imagine that other people woudl want to deploy this on their own server, withotu changing any file
 
Hey, you're the one that said "in some config file"
 
4:39 PM
hmm, you're right
but it's not what I meant ^^
 
"I want 100% config file without the file"
you know, like ham without the pig :D
 
I'm firstly wondering if my controller even gets called
23-Aug-2014 18:41:26.401 INFO [http-apr-8080-exec-43] org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping.registerHandler Mapped URL path [/bot] onto handler 'botController'
23-Aug-2014 18:41:26.402 INFO [http-apr-8080-exec-43] org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping.registerHandler Mapped URL path [/bot/*] onto handler 'botController'
 
can't you set up a break point to see if the code is being called
 
I tested it by sysout from constructor in this case
 
Holy. Because immutability is not a thing
 
4:42 PM
but it seems like it is not mapping the methods in the controller
 
test
test
I am working @Simon
 
The default setup made it such that only *.htm files got redirected to the dispatcher :|
 
@skiwi Why did I try to click that link???
 
4:50 PM
doit
balls.
needed to do add %20 instead of +
if you click that it'll take yo uto lmgtfy.com/?q=time+to+go+meta
 
@DanPantry Bukkit source code?
 
or should have
@Simon yup
 
No one can control my power.
 
goes to console
ctrl+C
where's your god now
 
test /payload: null
 
4:51 PM
@skiwi has made skynet
 
Then I guess all @skiwi needs now is... well... hosting it. And setting it up as a GitHub post commit thingy
And all I need is... to take a shower
 
And building the actual github post hook listener ;)
I'm getting some JSON request though
still figuring if I want to use Jackson to fully map it or not
 
afk now, hopefully I will still work after 30 minutes
 
5:25 PM
still working after 30 mins
test
test2
 
Tomorrow time to get a special testing repo up and to get the bot also on its own repo
 
6:10 PM
ello
 
6:49 PM
@DaggNabbit I got your solution working, however it does not create the setters and getters for the arguments like mine does :)
 
 
1 hour later…
7:57 PM
[2014-08-23 21:57:14,541]  INFO MainServer [      main] Starting Server...
[2014-08-23 21:57:15,069]  INFO ServerSock [      main] Starting Socket server at port 4242...
[2014-08-23 21:57:15,069]  INFO ServerSock [      main] Socket server started.
[2014-08-23 21:57:15,072]  INFO ServerSock [  Thread-0] Waiting for client nr: 1...
[2014-08-23 21:57:15,085]  INFO  ServerWeb [      main] Starting WebSocket server at port 4243...
[2014-08-23 21:57:15,086]  INFO  ServerWeb [      main] WebSocket server started
Liftoff!
@skiwi Jackson FTW!
 
8:09 PM
@DanPantry welcome :D
 
hello there
is dat netty?
or is that a roll your own socket solution
@SimonAndréForsberg
 
8:35 PM
That's entirely my own @DanPantry.
 
Looks good
 
Or well, I'm using a library for the WebSocket stuff
Thanks
I actually don't even know if Netty has support for WebSockets...
Why do I even say that? Of course they do...
I don't like Netty very much though, but that's perhaps because I've had a hard time using it
 
I found Netty to be useful but it's a bit confusing
Before they changed it I used it and it's very good if you want a full stack but it might be slightly heavy-weight if you don't need all of it's features
 
Yeah I found it very confusing
 
incidentally do y'all know any resources for finding UK based jobs in programming? Preferably those that don't ask for you to have a degree AND experience
I was looking on stackexchange but must seem to want a degree. bleh
 
8:46 PM
I'd recommend sending in an application even if they say you must have a degree. Just convince them that you have gotten the experience from elsewhere
@skiwi What does <showDeprecation>true</showDeprecation> do in the POM?
 
I haven't. I've only had one year in industry.
I would assume that that shows deprecation warnings from assemblies included as dependencies
> Sets whether to show source locations where deprecated APIs are used.
Default value is: false.
User property is: maven.compiler.showDeprecation.
 
@DanPantry But the years without the industry. You must have learned something then as well, have you not? Any projects you've worked on that you've released?
 
I have... I worked on the Eluna Lua engine which I no longer maintain, the Lua tutorial I wrote obviously, I worked as a lead developer at PokemonNXT for a few months and obviously I help out @ S/O for free
none of those are particularly impressive, though
 
But at least it's something
And if you don't have anything cool to show off, write a Sudoku Solver, a useful tool, or heck... why not even FizzBuzz in Brainfuck?
OK, perhaps FizzBuzz in Brainfuck isn't the best thing to do to get a job...
 
I've been thinking about doing something but my problem is I can never come with a project and stick with it, ahah
I either make it too complex from the get go OR get too complex halfway through something simple
 
8:56 PM
@DanPantry That sounds like a problem I've been having
I have about four games that are semi-complete. Unfinished. Not released. You name it.
 
more than me ;P
 
I hope that means that you are better at finishing yours ^^
 
I have NOTHING haha
afk watching TSM vs Dig
(LoL)
 
Then make something :)
One of my few actually finished projects is Minesweeper Flags Extreme, I'm surprised that it's still used. Not as much as it used to, but still...
Speaking of which....
[23:04:01] Game #1169078 has ended! SimonForsberg (11), AI_Nightmare (26)
[23:07:01] Game #1169079 has ended! AI_Nightmare (26), SimonForsberg (18)
I lost against my AI -.- Twice.
 
@bazola Ahh, I created getters and setters for the properties (second argument to createFunction) but not the parameters (first argument)
I'll update it :p
actually just add this after class:new
  for i, name in ipairs(parameters) do
    class['set_' .. name] = function(self, value)
      self[name] = name
    end
    class['get_' .. name] = function(self)
      return self[name]
    end
  end
too much code for programmers already :p
 
9:23 PM
@Phrancis If I understand the GDD correctly, there are 52 cards in each deck, and they are all creature cards? Each card has a strength and health identical to it's 'rank' (1-13)?
 
@Dagg: dat lua
 
@DaggNabbit I believe Lua code will want to listen for events, what events do we need?
 
Perhaps you should think about an implementation of the 'Stack' like MTG has/
it is literally a stack of events, actually
 
@DanPantry I'm definitely having that in mind for the future, but I think we will start more basic.
 
@DanPantry ik, blame @bazola for its evil inception
 
9:26 PM
@Dagg: for _, name in ipairs(parameters) do ~
@SimonAndréForsberg alrighty
 
@DanPantry ehh, i went back and forth on that aabout a year ago and decided to just use i
 
@Phrancis The GDD also says a bit about the scrap resource, but it doesn't explain very much in detail about how that is supposed to work, and what cards have a scrap cost. Can cards have both scrap cost and regular mana cost?
 
turned out i ended up needing that "i" later about half the time
@SimonAndréForsberg i think the scrap pile was pretty much the equivalent to mana in the game they playtested
 
@DanPantry I did start a MTG implementation in Java a while ago, I created functionality for summoning a creature, and summoning sickness. Then I realized how damn complex MTG is if you want to support it fully, and then I implemented Hearthstone instead ;)
@DaggNabbit As I understand it though there are two resources: Mana and Scrap. Scrap is not restored automatically each turn as mana is, and the only way to gain scrap is by scrapping cards. I don't exactly understand on which cards you are supposed to use the scrap though
 
@SimonAndréForsberg we will need a lot of events, will try to list the ones we are pretty sure about but we'll probably need to create more as the need arises
 
9:31 PM
@DaggNabbit Yeah, and I also think that a mod should be able to create new kinds of events, right? Such as MyAbilityEvent(source, target)
 
@SimonAndréForsberg then we'll have to wait until @Phrancis and @Jay1148 are around, probably. My understanding of it is that the ability to play something was only based on scrap resources available, no separate mana pool
 
> Each card has a cost in either Mana or Scrap. Each turn, the players Mana Total increases by 1, starting with 1 on the first turn. Mana is returned to the current Mana Total at the start of each turn. Unused mana is lost at the end of a turn.
To gain scrap, a player takes a card that is currently in their field and places it in their discard pile. Scrap only depletes when it is used, and is only accumulated when cards are scrapped.
 
@SimonAndréForsberg it would be nice, yeah. Not something we discussed yet but something i keep thinking we might need
 
(from the GDD)
@DaggNabbit I'm quite sure we'll need it.
 
@SimonAndréForsberg hmm i think that GDD is different from the game that was actually playtested
 
9:32 PM
Oh? Perhaps it is.
 
could be wrong, idk
 
Anyways, I'd like to see a detailed documentation of the game they playtested
As specific as possible.
So that we can focus on implementing it
It doesn't need to be balanced at first of course, but we need a goal.
 
yeah for sure
i think maybe @Phrancis already wrote something up actually
but idk where it is
i'll get with him about it
@SimonAndréForsberg events we need:

game started
game ended
turn started
turn ended
card played
card attacked
card died
card invoked ability
those for sure, probably more
 
Alright, and how should Lua add a listener for one of those events?
 
thinking that almost every command the client can send to the server during gameplay should have a corresponding event
@SimonAndréForsberg in my test implementation there were two ways
each event had a related "subject"
for example with card played event, the subject was the card that was played
if you wanted that card to do something special when it was played, you could give it an onPlayed function
the other way was by doing something like host:on('Played', function(subject, event) ... end)
 
9:40 PM
What if you invoke an ability that has one or more targets? Then the event also needs a target, right? Also, card attacked should also probably have a target
 
for other things that needed to listen for any card played
@SimonAndréForsberg yea, that was all in the "event" argument
 
Ah, OK
And event is a regular LuaTable?
 
yes
containing whatever data is relevant to the event
"subject" was duplicated there too, just because
 
I'm not a big fan of the string host:on('Played', ...) is there a better way to do that?
 
That pom setting was something that seemed useful
 
9:43 PM
Btw @DaggNabbit @Phrancis also posted a description here: www2.zomis.net/tcg-creation/34/…
 
@SimonAndréForsberg maybe, it just made it simple in my tests though because you could call subject['on' .. eventName] and then look for things listening for eventName
 
I suppose each card has both a mana and scrap cost
 
On phone, but how should I approach Spring MVC settings?
 
@SimonAndréForsberg ahh, there it is
 
@skiwi What settings?
 
9:44 PM
Bot email password and room id
 
@skiwi command line params?
just pass it in at runtime?
 
Yes but then in Spring MVC
 
no clue
 
That is what is currently stopping me from putting in on github
 
@skiwi oh, those. You should probably read this:
12
Q: Environment-specific configuration for a Spring-based web application?

RiteshHow can I know the deployment environment of a web application, e.g. whether it is local, dev, qa or prod, etc. Is there any way I can determine this in spring application context file at runtime?

 
9:47 PM
@SimonAndréForsberg i think using strings to identify events is simple and practical, if you can think of something better though, lmk... but it should be fairly easy to dispatch custom events from a script and consume them in the same way as host-provided events
 
I looked at that earlier, does that approach look correct to you?
 
@DaggNabbit Indeed, that is true. I'm so used with type-safety. If it were Java I would just do MyEvent.class :)
 
@SimonAndréForsberg 52 cards is just testing parameter as we have been using a normal poker card deck. The actual max number of cards remains undecided
 
@skiwi I think most of it makes sense, yes
@Phrancis sounds like 52 cards can work for now
 
Ok I will go ahead with that tomorrow then
 
9:51 PM
As for the scrap, simple rule is... cards of type B0T (e.g. weak, expendable cards) generate scrap, as opposed to Bios. Cybernetics (upgrades to bios) cost scrap to cast
For simplicity we played with rules where each card scrapped generates one scrap point, however we would like for a card to actually have a scrapValue
 
@Phrancis Where's the list of the cards?
(with their types etc.)
 
^ @SimonAndréForsberg
The cards labeled with # indicate scrap cost, and $ indicate mana cost
 
@Phrancis Could you write that up in the GDD or in the Q/A?
 
Even though they are just really rough testing parameters?
 
I'm thinking that we could focus on implementing those first, and then we'll modify as time goes by. Or do you and Jay want to spend some more time play-testing?
@Phrancis So Bios units are not scrapable? And Cybernetics can only target Bios (not B0Ts)? (Just checking to be sure)
 
10:00 PM
> Alright, and how should Lua add a listener for one of those events?
In ArcEmu, a WoW emulator, we had global methods that hooked onto things
and in TrinityCore Eluna (which I wrote!)
 
global methods? Example?
 
RegisterPlayerEvent(PLAYER_SPAWNED, local function(player) .... end)
wait I fucked up
PLAYER_SPAWNED would be a number, of course, like an enumeratio
it would go straight to the C API which would then register the Lua functor inside of a dictionary of sorts
associated by number and event type - Player, Item, NPC..
basically some kind of bastardized callback lol
C# example from the host side would look something like this (sorry I can't remember the types in Java)
foreach(var listener in listenerDict.Where(kvp => kvp.Key == Event.ID).Select(kvp=>kvp.Value))
   listener(args);
I'll get it right eventually.
Of course this doesn't scale very well when you have lots of callback handlers for the same event
The thing with having something like object:RegisterEvent(..) is that ends up with one of two scenarios
a) you end up having an instance of object to call RegisterEVent on -where does that object come from in the first place?
b) object is a singleton EventHandler - gooby pls no
 
@SimonAndréForsberg we can implement this just for the sake of having something to work with
 
it's simple and it works
You can change it later on down the road
 
@SimonAndréForsberg also yes, that's correct. Bios cannot be crap (because that's cruel) and cybernetic enhancements can only target bios
 
10:07 PM
Also, I don't think it's wise to have Lua handle every callback unless we WANT that callback to be customizable
 
@Phrancis what about the Software enchantment?
 
Java->Lua->Java is undoubtedly slow
 
@DanPantry I'm thinking that would be the game object
@DanPantry Well, the thing is that we want full moddability
 
@SimonAndréForsberg hm, potentially, but does it make sense for the Lua end to be able to have access to that?
@SimonAndréForsberg fair enough :P
 
Software can only be used on a Bio with at least one cybernetic upgrade. It is also non-destructible/recoverable from. We will have, at some point, cards that can destroy cybernetic enhancements but for now that's enough to think about
 
10:09 PM
@DanPantry It's a turn based game, it doesn't have to be fast
 
Although you should consider putting the event registration in an eventController object ;)
 
@DanPantry And eventController is contained inside a game? Done that already. Just need to change a bit in that eventController thingy
 
@SimonAndréForsberg Game has-a EventController, yes :P Although does it make sense for the Game to expose the registerEvent method? Unless it's just a facade, in which case w/e
I'm just nitpicking you understand, don't take me seriously :P
 
@Phrancis non-destructible? And how is that different from the other enchantments?
@DanPantry Never did. Never plan to.
(Don't take me seriously right now ^^)
 
Which is sa point, probably the wrong place to ask - would you test a Facade? I employ TDD and interested in opinions
@SimonAndréForsberg it's all cool bro :p
 
10:13 PM
I barely even use Facades, I think...
 
If you are exposing registerEvent() that delegates to EventController.registerEvent on Game you're creating a facade :p
Either that, or you're making a class that does too much :
:P
 
@SimonAndréForsberg as of right now, with this very early test set of rules, it is not different. But in the future, it will be. Picture a card you cast (there will be Spell and Trap cards at some point) where it strips one random enhancement, or the last one... the software one would be excluded from that list
 
@Phrancis so it's a bit like an Emblem in MTG only attached to a creature?
 
@Phrancis Alright, got it.
@DanPantry Or it's an Enchantment - Aura that's Indestructible
 
I am not sure what an Emblem is in MTG, as I haven't played it in about 15-16 years
 
10:15 PM
@Phrancis: Emblem is an Enchantment that is worded in such a way that it cannot be destroyed by anything (i.e, it is not a permanent or non-permanent nor creature, instant or enchant for the purposes of any targetting)
 
@Phrancis Emblem is basically an effect for "For the rest of the game (...)". There are no way to remove an emblem from the game (yet)
 
It's pretty much like that, except it dies with the creature
And applies only to the creature
 
Indestructible Enchantment Aura with Shroud :)
 
let's call it Steve
 
^lol
 
10:17 PM
 
5 mins ago, by Simon André Forsberg
@DanPantry Never did. Never plan to.
 
:D
I am heading off. I will leave you with this adorable dog. ciao
 
That's random... seeya
Need to get some groceries... bbl
 
10:56 PM
@skiwi I wrote an answer here so that there's something for you to accept: www2.zomis.net/tcg-creation/79/java-lua-prototype
 
11:11 PM
@Phrancis isn't what I wrote pretty much exactly what you all play tested, with the exception of the buff spells?
i think dan pantry might be too cool for us old fogies ;)
 
Thanks for the answer @Simon
 
11:39 PM
@bazola yeah it's pretty much it
Dan's pretty young guy isn't he... like 19 or 20?
He seems to have some good ideas though
 
01:00 - 16:0016:00 - 00:00

« first day (21 days earlier)      last day (3527 days later) »