« first day (48 days earlier)      last day (3531 days later) » 

6:47 AM
Monking
@SimonAndréForsberg Yeah, I'm not that kind of guy ;)
@SimonAndréForsberg You think we can move to 0.2 soon? Probably includes network capabilities then
and I need to pull the develop changes again later today
 
 
4 hours later…
10:41 AM
@skiwi when we're ready for 'real' network playing, yes. I'm not sure if it will be this week though...
 
@SimonAndréForsberg I don't know the exact status quo though on that, from hearing it sounded like it was kinda working
 
@skiwi kinda working, yes. but it doesn't show yet when cards move to battlefield. so there's some important things left
 
@SimonAndréForsberg That's... important
 
my point exactly
 
Meeting with student advisor in a bit
35% charge left after 4 hours, I'm happy
 
11:30 AM
hopefully I can get the cards working today. I have had some ideas on that but haven't started implementing yet
 
11:48 AM
cool
 
12:00 PM
I was also thinking about the potential iOS client. It occurred to me that some of the pieces to make it happen already exist. there is something in the apple libraries that can handle JSON, and plenty of tutorials about hooking up iOS to a Java server
what is missing is that I don't think anything that is a "java object" is going to be fully compatible. might only be able to use strings
 
@bazola I bet there can be some ObjectiveC classes that can replace those java objects
the hardest things about the clients will be to make them dynamic so that they can support many kinds of mods
 
so you think the JSON parser in Obj-C would convert a java object to an objective-c object?
what I mean is, some of the implementation requires calling methods of Java objects such as toString() or getId() or getAction()
 
@bazola when it is received in Objective-C, it is not a Java object. It is purely a JSON String. There is probably a library in ObjC that can do some magic with that, just like Jackson does some magic to create a Java object for it.
 
12:18 PM
interesting
well as far as making the whole client interface and layout change for different mods, I have no good ideas for that one
 
@bazola templates are the only way
need to specify where an object is placed, could perhaps even use CSS for it
 
that works for JavaFX and scene builder, perhaps, but not for any other platform. And seems like it would require the modder to build FXML documents
 
I have some ideas for how to make it a bit flexible at least, but it will take a while
 
@bazola How about percentual absolute positioning without a language attached, would that work?
 
@skiwi I foresee scaling issues
 
12:30 PM
@SimonAndréForsberg Well we need something to demo it with first
 
the thing is that I can see the client easily being able to put arbitrary text at different predetermined places on the screen, but not much else. But I don't think we should get bogged down worrying about infinite or crazy moddability
 
@bazola Well, the initial attempt should be focused at only text I think
 
I've already accomplished that as far as drawing the text for the Life, Mana, etc on the screen
 
But you cannot configure exactly where it's placed there
 
without the client knowing what the values were and where the server wants them to be placed, I don't see how that could be achieved
right now the client only gets the message and draws the text contained in the message
so the server could have a mod that had another statistic such as ARMOR_TOTAL or whatever, but the client wouldn't know where to put that, because the client knows nothing about the specifics of entities/components/etc
the modder could make an FXML that had a specific area they wanted to draw ARMOR_TOTAL, but the client would not know about it without being changed to account for it (i.e. when it gets an ARMOR_TOTAL message it puts the value in the Armor Label)
 
12:40 PM
How about putting the labels in a VBox? So that they're just placed below each other?
 
thats how it is now
 
but right now, do you create those values dynamically or not?
 
yes
 
but it doesn't know what order to put them in, that order is determined by the order they are received by the server
 
12:41 PM
so at least all such data is shown, no matter the mod
that is true
 
> Corrected spelling of ResourceRetrIEver
 
@bazola The client would need to have a visual mod then for it
 
[Cardshifter/Cardshifter] build #126 for commit 253f0360 on branch ecs-utils passed
> Added Retriever injection
 
be back in a little bit
 
[Cardshifter/Cardshifter] build #127 for commit 03bfcf82 on branch ecs-utils passed
> Automatically Injecting when adding system to game
[Cardshifter/Cardshifter] build #128 for commit 3624f333 on branch ecs-utils passed
 
1:03 PM
The Mulligan feature is in the game model now (there is a unit test for it), on the branch 'issue10'. Changes are required in the UI(s) to support an action with multiple targets (which is how this is implemented)
 
1:59 PM
thats cool
 
> added decks to the UI
[Cardshifter/Cardshifter] build #129 for commit 4bb39f5d on branch javafx passed
 
2:29 PM
working on a ZoneView class now, I hope I can get it to work right
 
right now the ZoneView gets a reference to the FXML Pane, do you think that the ZoneView should create the contents of that Pane? If so, then I would probably need a subclass of ZoneView for the opponents hand, for the players hand, and for the battlefield
 
2:57 PM
i think I have it figured out, the only inefficiency is that the ZoneView has an internal map of the Panes referenced to their Ids. So when you want to remove something, the ZoneView looks up what Pane to remove based on that Id, and then tells the rootPane(which is a reference to the FXML pane) to remove it
 
> Added ZoneView class, made opponent hand use it
 
i just pushed the initial stuff if you want to look at it, and now I am going to try to implement it for the other zones
 
[Cardshifter/Cardshifter] build #130 for commit 29aff1af on branch javafx passed
 
 
1 hour later…
4:20 PM
> player hand now uses ZoneView
[Cardshifter/Cardshifter] build #131 for commit 4d22d9f5 on branch javafx passed
 
4:38 PM
@SimonAndréForsberg I will get a message that a card has moved from the players deck to the players hand, but where do I get that card information from?
 
4:54 PM
@bazola you should be given a CardInfoMessage as well
or is that part not working?
 
Strange, Dagg posted another CR question, I don't know what is up with him
 
@bazola Whoops, I have made a little mistake in the server code
@bazola A question: If a card goes from your hand to your battlefield, do you want a CardInfoMessage for it? Because it was known already when it was in your hand.
 
no I don't think that would make sense
 
so no cardinfomessage there, then
 
right now I am going to take the zone change message, and I will have to re-render the card in a different way on the battlefield with the information I have saved in the ZoneView about that card
but I am not totally sure.. what I have done so far is partially working, but there are gaps. Not sure how to handle an opponent card getting onto the battlefield either, actually
this code should be working but it is not removing the Pane:
	public void removePane(int paneId) {
		Pane paneToRemove = this.zoneMap.get(paneId);
		this.rootPane.getChildren().remove(paneToRemove);
		this.zoneMap.remove(paneId);
	}
 
5:03 PM
@bazola right now there's not much you can do about that because someone (me) accidentally forgot to send a CardInfoMessage for that.
 
it gets the right pane, and it draws the right pane to the battlefield (although it looks bad), but it does not remove the pane
 
> Fixed sending of CardInfoMessage
 
@bazola pull that change and see how it will work for you
 
[Cardshifter/Cardshifter] build #132 for commit 061050a0 on branch javafx passed
 
5:24 PM
well I see the messages but I am not sure why it's not drawing the cards
after that last pull, now it does properly remove the card from the hand, but it does not draw the new cards
but that pull should have had nothing to do with the cards being removed anyway, so why would it suddenly start working with no changes
 
well, it's probably easier to fix if you get the correct data from the server
now you should get the data you need
 
i appreciate it
 
I might be able to take a look at your code and see if I spot any issues
 
I'm working on it but I keep getting distracted
 
know the feeling
in your code that I have here, I don't see any usage of ZoneChangeMessage. And I also see some empty methods:
	private void addCardToOpponentBattlefieldPane(CardInfoMessage message) {
	}
	private void addCardToOpponentHandPane(CardInfoMessage message) {
	}
	private void addCardToPlayerBattlefieldPane(CardInfoMessage message) {
	}
 
5:42 PM
	private void processZoneChangeMessage(ZoneChangeMessage message) {
		int sourceZoneId = message.getSourceZone();
		int destinationZoneId = message.getDestinationZone();
		int cardId = message.getEntity();

		if (this.zoneViewMap.containsKey(sourceZoneId) && this.zoneViewMap.containsKey(destinationZoneId)) {

			if (sourceZoneId == opponentHandId) {

			} else if (sourceZoneId == playerHandId) {
				ZoneView sourceZone = this.zoneViewMap.get(sourceZoneId);
				Pane cardPane = sourceZone.getPane(cardId);
 
it's easier if you commit and push the changes
then I can just pull
 
hold on
why is one of these zone 2 and the other one zone 3?
CardInfo: 5 in zone 2 - {SICKNESS=1, MANA_COST=1, ATTACK=1, HEALTH=1, ATTACK_AVAILABLE=1}
ZoneChangeMessage [entity=6, sourceZone=2, destinationZone=3]
CardInfo: 6 in zone 2 - {SICKNESS=1, MANA_COST=2, ATTACK=2, HEALTH=1, ATTACK_AVAILABLE=1}
ZoneChangeMessage [entity=7, sourceZone=2, destinationZone=3]
CardInfo: 7 in zone 2 - {SICKNESS=1, MANA_COST=3, ATTACK=3, HEALTH=3, ATTACK_AVAILABLE=1}
ZoneChangeMessage [entity=8, sourceZone=2, destinationZone=3]
CardInfo: 8 in zone 2 - {SICKNESS=1, MANA_COST=4, ATTACK=4, HEALTH=4, ATTACK_AVAILABLE=1}
 
> started working on zone change messages
[Cardshifter/Cardshifter] build #133 for commit 2a2489df on branch javafx passed
 
debugging is always fun :) for some reason new card info messages are not activating the appropriate method
i think it has to do with the mulligan thing
 
the mulligan thing isn't included in that code
it's on a totally separate branch which hasn't been merged
There is no arrow from 'issue10' to 'javafx'
 
5:52 PM
my code saves the hand id as 3 when it gets this message:
ZoneMessage [id=3, name=Hand, owner=1, size=5, known=true]
but then the new card message looks like this:
CardInfo: 11 in zone 2 - {SICKNESS=1, MANA_COST=5, ATTACK=5, HEALTH=3, ATTACK_AVAILABLE=1}
 
so it doesn't add it because it is looking for 3
 
oh crap
I think I understand
Let me fix something in the server
 
cool :)
 
> Fixed CardInfoMessage when changing zone
 
5:56 PM
@bazola try that ^^
 
by the way, never add a rectangle to a HBox directly, always make an anchor pane and add them separately... because otherwise the HBox starts out as full of the rectangle
the cards are drawing properly now
for the player hand that is, nothing else
 
[Cardshifter/Cardshifter] build #134 for commit 7c865cfa on branch javafx passed
 
so you fixed the bug we were seeing, hopefully I can fix the rest :)
2
you are going to make it so there is a card info when the enemy plays a card to the battlefield?
 
6:42 PM
@bazola there should be that already
 
7:13 PM
so weird
I get a null pointer exception here, but it still lets me cast the node as a Rectangle and change its background color.. so why the exception?
if (node.getId().equals("backgroundRectangle")) {
 
7:24 PM
I can't really tell from only that line
 
sorry
	public void highlightCard(int cardId) {
		Pane pane = this.getPane(cardId);
		List<Node> children = pane.getChildren();
		for (Node node : children) {
			if (node.getId().equals("backgroundRectangle")) {
				Rectangle rectangle = (Rectangle)node;
				rectangle.setFill(Color.YELLOW);
			}
		}
	}
i think i will just be subclassing ZoneView anyway and give it the whole Controller so it can call methods on it
 
I'm not sure why that happens
 
this does work with the exception of the NPE
 
well, it's good that it works at least
 
i suppose :)
 
7:40 PM
> active cards in hand highlight but it is buggy
[Cardshifter/Cardshifter] build #135 for commit c94a523d on branch javafx passed
 
Hey @Vogel612
 
what the heck
spotten in the first few seconds of joining.
and that only because I joined "all favorite rooms"
 
@Vogel612 YOU ARE BEING WATCHED!
3
 
hurr durr
@SimonAndréForsberg WHERE ARE MY UPVOTES THEN! ;)
 
It was pretty much coincidence though, I got back here just a few seconds before you arrived
 
7:50 PM
loool
 
@Vogel612 ASK SANTA
 
Hey @Santa: Tell me, where are my upvotes (especially on my review)?
 
@Vogel612 Santa doesn't vote on lolcode
 
> cardshifter: document branches all in building tags, reference github.com/travis-ci/travis-ci/issues/1675
I should work this out
 
7:56 PM
> layout fix for the player hand
[Cardshifter/Cardshifter] build #136 for commit 99c1af81 on branch javafx passed
> Before you start a game, you should be able to for example choose/modify your deck, pick your opponent (when there are multiple AIs to choose from), and possibly some other settings (allowed cards, special features, etc.)
 
@Duga That's a bug feature request...
To do at once
Clicks the magical IDE button
 
@skiwi bug feature?
 
@SimonAndréForsberg bug big feature
 
@skiwi yes, but I believe it is quite an important one. We should think about how to implement it
 
8:07 PM
Yes it's important, agreed
 
I think if we can implement custom decks then we can play test pretty well without the rest of it
 
> Added explanation in comments of travis configuration file as to why all_branches: true needs to be used.
 
Waiting until it builds
 
[Cardshifter/Cardshifter] build #137 for commit baef78d3 on branch master passed
 
It didn't create a new release... good
@SimonAndréForsberg what was added to develop branche since I branched off the ecs-module-support?
 
8:15 PM
So it only creates new releases when it is tagged?
 
@SimonAndréForsberg Yes
Due to that bug it works on all branches, but it should only work when you tag it on master
 
> Merge branch 'master' of github.com/Cardshifter/Cardshifter into develop
 
@SimonAndréForsberg But conceptually? Did any of the layout change?
@Duga Now a merge happened because it couldn't fast-forward, but it did do an automatic recursive merge
Code layout I mean... not javafx layout
 
8:19 PM
[Cardshifter/Cardshifter] build #138 for commit c903fb29 on branch develop passed
 
@skiwi Nothing really big I think. There's a change in important methods on ECSAction though, but that hasn't been merged into the develop branch.
 
I thought something was going after I branched off, but cannot recall it
 
From what I have heard from others, renaming files and modifying them in two separate branches at the same time will create one heck of a merge conflict later
 
The deprecating classes part?
@SimonAndréForsberg Are we doing this somewhere already?
In any case, is it still worth to merge again when working on the ecs-module-support?
 
@skiwi I think we have been doing before, when you moved some Action classes and stuff some weeks ago, that created quite a merge conflict
 
8:23 PM
Ideally I want to merge it either way before making the final PR?
@SimonAndréForsberg Ah yes...
 
@skiwi what about the deprecating classes part?
 
@SimonAndréForsberg Never mind that, the other question about merging develop is more improtant ;)
 
@skiwi Ideally you should pull recent changes from the 'ecs-utils' branch before moving classes around, and when you have moved things around you should commit and push result quickly, to minimize the merge conflicts.
 
What's the new ecs-utils?
 
some improvements for the ECS. Added a few classes for simplifying getting ComponentRetrievers
 
8:27 PM
This is getting all a bit confusing ;)
Any reason why it's not inside the develop?
 
Because I haven't merged it
 
But I shouldn't need to pull that branch into mine I think
If I just regularly pull in develop until I'm done
 
It should probably be inside develop though
there are important enough changes there
 
@skiwi Speaking of confusing, how much have you looked at the existing code to understand how it all works?
 
@SimonAndréForsberg That's still in the plans... When I find some darned time ;)
 
How can I "tag" the conversation we had last wednesday?
 
I know there's some separately saved conversations in The 2nd Monitor
 
8:31 PM
@skiwi it's called bookmarking
 
room -> create new bookmark
 

ecs-module-support conversation

2 days ago, 51 minutes total – 105 messages, 3 users, 0 stars

Bookmarked 22 secs ago by skiwi

There ^
I was about to go, but then remembered that I forgot to actually play the latest version
Huh, I seem to have the old layout @SimonAndréForsberg?
I pulled javafx and rebuild, how can that happen
I still have buttons on my cards
or is it maybe not the old layout
It maybe is, because I'm not using the network either
 
The layout for stand-alone JavaFX is different from the layout of client JavaFX
 
8:39 PM
Testing server/client i stoo much for now ;) I'll be going off
 
9:05 PM
well subclassing got rid of the exception I was dealing with earlier
 
9:19 PM
> Added PlayerHandZoneView subclass, you can now play cards from your hand by clicking on them
2
[Cardshifter/Cardshifter] build #141 for commit 2541d82b on branch javafx passed
 
@Duga I have missed that feature!
 
it was not an easy one!
I'm not a huge fan of having to do this:
	private void processEntityRemoveMessage(EntityRemoveMessage message) {
		for (ZoneView zoneView : this.zoneViewMap.values()) {
			if (zoneView.getAllIds().contains(message.getEntity())) {
				zoneView.removePane(message.getEntity());
			}
		}
	}
 
9:50 PM
> Implemented EntityRemoveMessages in client, it appears to be working
[Cardshifter/Cardshifter] build #142 for commit 31894789 on branch javafx passed
 
well I think that is mostly it for me today. I need to create another ZoneView subclass for the battlefield, and then I should be able to make it so you can scrap cards by clicking them, and then maybe attack too, but I'm not too sure about that yet
I'll probably have to make another Controller/FXML document for the battlefield cards too, so it is going to take some time
 
10:44 PM
@SimonAndréForsberg I lied, did some more
2
 
> added Battlefield ZoneView and DocumetnController
[Cardshifter/Cardshifter] build #143 for commit 209f684f on branch javafx passed
> battlefield cards now highlight, and can be activated (with unimplemented targeting)
 
just a couple of features away from being equal to the single player client now @SimonAndréForsberg :)
 
@bazola Looking good!
I like it when you lie... apparently
 
[Cardshifter/Cardshifter] build #144 for commit 6f8d0365 on branch javafx passed
 
11:01 PM
lol
well unfortunately I had to actually start making some stuff before the right way to make it became apparent, but it wasn't too hard to transition
i haven't seen messages that included card type or creature type? but I assume the CardInfo for enchants does have enchant strength and scrap cost?
 
@bazola when making things one way, it often becomes easier to see what a better way of doing it is. I have experienced this many times.
@bazola I haven't yet sent any creature type information. Sending that alone isn't difficult, but I'm trying to come up with a strategy of sending many things.
Enchants have scrap cost, yes. But they don't have 'enchant strength', they share the same ATTACK 'property' as creatures.
 
that may not be optimal, but it will be okay as long as I can see the card type so that I know where to draw the number
anyway, heading out for now
talk to you later!
 

« first day (48 days earlier)      last day (3531 days later) »